Зарегистрировать расширение |
ОГЛАВЛЕНИЕ    HOME  MAIL |
|
Чтобы Windows открывала файлы с расширением "EXT" Вашей программой нужно зарегистрировать это расширение. Для этого в реестре нужно создать два раздела. Первый HKEY_CLASSES_ROOT\.ext. В нем, в параметре "по умолчанию" нужно написать "MyProg". В разделе KEY_CLASSES_ROOT\MyProg "по умолчанию" поставьте "Файл моей программы". Эта фраза будет отображаться в Проводнике в колонке "Тип". А в HKEY_CLASSES_ROOT\MyProg\Shell\Open\Command напишите "С:\MyProg.exe "%1"". А при запуске программы проверяйте, нет ли в параметрах имени файла, а если есть, то откройте этот файл. uses Registry;
procedure TForm1.FormCreate(Sender: TObject);
var
Reg: TRegistry;
FileName: string;
begin
Reg := nil;
try
Reg := TRegistry.Create;
Reg.RootKey := HKEY_CLASSES_ROOT;
Reg.OpenKey('\.ext', true);
Reg.WriteString('', 'MyProg');
Reg.CloseKey;
Reg.OpenKey('\MyProg', true);
Reg.WriteString('', 'My document');
Reg.CloseKey;
Reg.OpenKey('\MyProg\Shell\Open\Command', true);
Reg.WriteString('', ParamStr(0) + ' "%1"');
Reg.CloseKey;
Reg.OpenKey('\MyProg\DefaultIcon', true);
Reg.WriteString('', ParamStr(0) + ', 1');
Reg.CloseKey;
finally
if Assigned(Reg) then Reg.Destroy;
end;
if ParamCount > 0 then begin
FileName := ParamStr(1);
if FileExists(FileName)
then Memo1.Lines.LoadFromFile(FileName)
else ShowMessage(FileName + ' не существует');
end;
end;
email: delphi4all@narod.ru | |