Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как зарегестрировать за своей программой новый типа файлов? [D5, D6, WinXP]


Naik ©   (2002-06-21 06:27:00) 

Народ, у меня уже есть пример отвечающий на мой вопрос, но я не могу понять, что надо писать в самой программе, чтобы открытии файлов через windоws они окрывались в моем приложении. В этом коде, как я вижу используется запуск программы с параметрами, так когда как их считать. И еще, возможно ли зарегестрировать этот тип файлов не из приложения, а еще во время установки. И, пожалуйста обьясните все подробненько...

Пример регистрирует расширение файла(.myext) - файлы этого типа будут открываться приложением MyApp.Exe. Также регнстрируется одно действие (action) по умолчанию для файлов этого типа и два дополнительных пункта контекстного меню, связанного с этим типом файлов. Возможно, потребуется перезайти в систему чтобы изменения вступили в силу.


uses
Registry;

procedure TForm1.Button1Click(Sender: TObject);
var
R : TRegIniFile;
begin
R := TRegIniFile.Create("");
with R do
begin
RootKey := HKEY_CLASSES_ROOT;
WriteString(".myext","","MyExt");
WriteString("MyExt","","Some description of MyExt files");
WriteString("MyExt\DefaultIcon","","C:\MyApp.Exe,0");
WriteString("MyExt\Shell","","This_Is_Our_Default_Action");
WriteString("MyExt\Shell\First_Action",
"","This is our first action");
WriteString("MyExt\Shell\First_Action\command","",
"C:\MyApp.Exe /LotsOfParamaters %1");
WriteString("MyExt\Shell\This_Is_Our_Default_Action","",
"This is our default action");
WriteString("MyExt\Shell\This_Is_Our_Default_Action\command",
"","C:\MyApp.Exe %1");
WriteString("MyExt\Shell\Second_Action",
"","This is our second action");
WriteString("MyExt\Shell\Second_Action\command",
"","C:\MyApp.Exe /TonsOfParameters %1");
Free;
end;
end;


Юрий Зотов   (2002-06-21 12:26:00) [1]

См. на "Королевстве". Раздел "Hello, world" - примеры работы с Win API, пример № 3.


Наверх

Титульная страница Поиск, карта сайта Написать письмо