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

Вниз

Параметры программы   Найти похожие ветки 

 
alex_samus   (2005-05-08 19:57) [0]

Люди помогите.Мне надо , чтобы у определенных расширений файлов в контекстном меню была возможность открыть их в моей программе и мне соответственно надо получить путь к выделенному файлу , который как я знаю передается программе как параметр, а что делать если я выделяю несколько файлов , ведь должго передаваться несколько параметров?
Если выделить несколко файлов и открыть их то откроется несколько окон программы каждая из которых получит путь к одномуиз файлов
Я делаю так :

var
 reg: TRegistry;
begin
 reg := TRegistry.Create;
 reg.RootKey := HKEY_CLASSES_ROOT;
 reg.LazyWrite := false;
 reg.OpenKey(edit2.Text+"\shell\open\command", true);
 reg.WriteString("", application.ExeName+" %1");
 reg.CloseKey;
 reg.OpenKey(edit2.text+"\DefaultIcon",true);
 reg.WriteString("", application.ExeName+",0");
 reg.CloseKey;
 reg.free;
end;
//В edit2 у меня расширение которое надо зарегистрировать  


 
Marser ©   (2005-05-08 21:13) [1]

Вот реально работающий фрагмент:
procedure TForm1.checkreg;
begin
r:=Tregistry.Create;
try
 r.rootkey:=HKEY_CLASSES_ROOT;
   with r do
    begin
     openkey(".mcf",true);
     writestring("","Calculating formula");
     closekey;
     openkey("Calculating formula\Shell\open",true);
     writestring("","Запустити калькулятор");
     closekey;
     openkey("Calculating formula\Shell\open\command",true);
     writestring("", extractfilepath(paramstr(0))+"mcalc.exe %1");
     closekey;
     openkey("Calculating formula\DefaultIcon",true);
     writestring("",extractfilepath(paramstr(0))+"def.ico");
     closekey;
   end;
 finally
  r.Free
 end
end;

Ассоциирует .mcf с экзешником, находящимся рядом в папке.


 
alex_samus   (2005-05-08 23:56) [2]

Ну, понимаешь этот код работает , но он работает так же как и мой, и он так же как и мой при выделении нескольких файлов открывает несколько окон программы и передает каждому из них по пути, мне надо , чтобы все пути передовалися одному окну программы(наверное все пути должны передаваться , как параметры).


 
Marser ©   (2005-05-09 00:04) [3]

Могу ошибаться, но кажется, это уже вовсе и не реестра проблемы.


 
Юрий Зотов ©   (2005-05-09 15:05) [4]

http://www.delphikingdom.com/asp/viewitem.asp?catalogid=904



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

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

Наверх




Память: 0.48 MB
Время: 0.067 c
1-1118091583
Karnak
2005-06-07 00:59
2005.06.29
Путь папки windows


14-1117610965
Skier
2005-06-01 11:29
2005.06.29
Построение буферной зоны.


4-1114528628
viper - omsk
2005-04-26 19:17
2005.06.29
Открытие приложения


1-1117802947
smesh
2005-06-03 16:49
2005.06.29
Полная поддержка Юникод


6-1112481257
Vadim X
2005-04-03 02:34
2005.06.29
SOKS-Proxy