Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.03.23;
Скачать: CL | DM;

Вниз

Свое расширение на файл.   Найти похожие ветки 

 
oleg_teacher   (2008-02-21 13:07) [0]

Допустим есть на форме мемо. Сохраняю текст в файл сосвоим расшмрением. Как мне ето расширение связать с мое програмой и что бы при запуске етого файла текст размещался автоматически на мемо!!


 
Johnmen ©   (2008-02-21 13:14) [1]

1.
http://www.yandex.ru/yandsearch?text=%E7%E0%F0%E5%E3%E8%F1%F2%F0%E8%F0%EE%E2%E0%F2%FC+%F1%E2%EE%E5+%F0%E0%F1%F8%E8%F0%E5%ED%E8%E5+%F4%E0%E9%EB%E0
2.
Как ты обработаешь параметр исполняемого файла, так и будет.


 
Palladin ©   (2008-02-21 13:15) [2]


> Как мне ето расширение связать с мое програмой


procedure vtRegisterFileType(Const p_strExt,p_strExtDesc,p_strDesc,p_strExec:string);
Begin
If (p_strExt="") or (p_strExtDesc="") or (p_strExec="") Then Exit;
With TRegIniFile.Create Do
 Try
  RootKey:=HKEY_CLASSES_ROOT;
  WriteString(p_strExt,"",p_strExtDesc);
  If p_strDesc=""
   Then WriteString(p_strExtDesc,"",p_strExtDesc)
   Else WriteString(p_strExtDesc,"",p_strDesc);
  WriteString(p_strExtDesc+"\shell\open\command","","""+p_strExec+"" "%1"");
 Finally
  Free;
 End;
end;



>  что бы при запуске етого файла текст размещался автоматически
> на мемо!!

типа самый хитрый чтоли? тебе название файла придет в параметрах при запуске приложения... а что с ним делать должен ты решать...


 
webpauk ©   (2008-02-21 13:20) [3]

вообще то Tmemo.Text можно сохранить только в текстовый файл, независимо от его расширения. Соответственно когда прописал связь расширения со своей программой - при открытии из параметров получаешь имя файла, а дальше - Tmemo.Lines.LoadFromFile(...)


 
oleg_teacher   (2008-02-21 13:43) [4]

я извиняюсь за незнание, но какой параметр при открытии дает название файла


 
Palladin ©   (2008-02-21 13:43) [5]

ParamStr + F1


 
{RASkov} ©   (2008-02-21 13:47) [6]

> [4] oleg_teacher   (21.02.08 13:43)

Так ты уже [1] изучил??? А ведь там даже примеры кодом есть....


 
oleg_teacher   (2008-02-21 14:21) [7]

Всем огромное спасиба и за PARAMSTR и за [1] и [2] будем разбиратся.


 
Дмитрий Патрушев ©   (2008-02-22 00:31) [8]

program hren
var
 s: string
beg..
 Application...

 s:= paramstr(1)
....Run
end.

А на форме онкреате юзаешь s. (конечно же s надаа передать в форму сразу же после ее create)


 
Германн ©   (2008-02-22 01:21) [9]


> Дмитрий Патрушев ©   (22.02.08 00:31) [8]
>
> program hren
> var
>  s: string
> beg..
>  Application...
>
>  s:= paramstr(1)
> ....Run
> end.
>
> А на форме онкреате юзаешь s. (конечно же s надаа передать
> в форму сразу же после ее create)
>

Пить надо меньше.
Надо же такую чушь придумать!


 
Loginov Dmitry ©   (2008-02-22 07:52) [10]

> [8] Дмитрий Патрушев ©   (22.02.08 00:31)


Пример кода ты дал. А вот где обоснования в пользу его использования? На кой там дополнительная переменная? Да еще с именем "S". Зачем параметр запоминать до ...Run? Ворона его украдет чтоли? И как ты собираешься передавать "S" в форму "сразу же после ее create" (переменная "S" недоступна из других модулей)?

Не каждый смог бы дойти до такой чуши (даже если ооочень много выпьет) :)


 
Amoeba ©   (2008-02-22 16:48) [11]


> Loginov Dmitry ©   (22.02.08 07:52) [10]

Забей! Нервные клетки не восстанавливаются.


 
NaRuTo ©   (2008-02-23 10:08) [12]

Короче создаёшь в реестре раздел ".твоё расширение" в HKEY_CLASSES_ROOT. Щёлкаешь по этому разделу... Там будет ключ: "По умолчанию". Вот открой его и напиши имя своего приложения...
Дальше создаёшь в HKEY_CLASSES_ROOT раздел с именем который ты написал в ключе "По умолчанию" (Обязательно)...
После создания..Щёлкай по этому разделу можешь создать иконку раздел "DefaultIcon",дальше открытие.... Нужно в этом разделе создать раздел
shell->open->command .,..В ключе по умолчанию пишешь где твоё приложение находится.... + "%1".
Чтоб твоя програ их открывала теперь в событии Show пользуйся ParamStr(1)
:)


 
Leonid Troyanovsky ©   (2008-02-23 10:54) [13]


> oleg_teacher   (21.02.08 13:07)  

http://groups.google.com/group/borland.public.delphi.winapi/msg/ae81683432ea8efb

--
Regards, LVT.


 
Вредитель ©   (2008-02-24 16:00) [14]

var
Reg: TRegistry;
begin
Reg := TRegistry.Create;
Reg.RootKey := HKEY_CLASSES_ROOT;
Reg.OpenKey(".BMP" , True);
Reg.WriteStringC1, "BMPfile");
Reg.CloseKey;
Reg.CreateKey("BMP"+"file_cyd");
Reg.OpenKey("BMPfile\Defaultlcon", True);
Reg.WriteString("", Application.ExeName + ",0");
Reg.CloseKey;
Reg.OpenKey("BMPfileVshellXppenXcommand", True);
Reg.WriteStringC1, Application.ExeName + " "%!"");
Reg.CloseKey;
Reg.Free;
end;

procedure TForml.FormShow(Sender: TObject);
Str:String,•
i:Integer;
begin
if (ParamCount > 0) then
begin
Str:=ParamStr(1);
for i:=2 to ParamCount do
begin
Str:=Str+" "+ParamStr(i);
end;
Imagel.Picture.LoadFromFile(Str);
end;
end;

пример с picture


 
MetalFan ©   (2008-02-24 23:14) [15]


> for i:=2 to ParamCount do
> begin
> Str:=Str+" "+ParamStr(i);
> end;

накой эти телодвижения?



Страницы: 1 вся ветка

Текущий архив: 2008.03.23;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.02 c
11-1186400601
sunwise
2007-08-06 15:43
2008.03.23
Красивый ToolBar подскажите плиз.


2-1203487534
snake-as
2008-02-20 09:05
2008.03.23
Работа с числами


2-1203968323
макз
2008-02-25 22:38
2008.03.23
TComboBoxEx


15-1202553223
Kostafey
2008-02-09 13:33
2008.03.23
С днем рождения ! 9 февраля


2-1203997892
Chorniy
2008-02-26 06:51
2008.03.23
Корректно ли делать так? WaitForSingleObject()