Зарегистрировать расширение |
ОГЛАВЛЕНИЕ    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 |