26.03.2008, 21:43
общий
это ответ
Здравствуйте, PAFOS!
По второму вопросу.
Посмотрите <a href=http://www.delphisources.ru/pages/faq/base/register_new_file_type.html>эту статью</a>. В приложении ее копия (пример для Delphi, но переделать, я думаю, не составит проблем).
После регистрации своего расширения файла (или изменения программы, открывающей выбранный тип), можно просто запустить данный файл с помощью функции <a href=http://msdn2.microsoft.com/en-us/library/bb762153.aspx>ShellExecute</a>.
Удачи!
Приложение:
uses Registry;Затем в публичных объявлениях объявляем процедуру регистрации нового типа файлов:public { Public declarations } procedure RegisterFileType(ext: string; FileName: string);Описываем её так:procedure TForm1.RegisterFileType(ext: string; FileName: string);var reg: TRegistry;begin reg:=TRegistry.Create; with reg do begin RootKey:=HKEY_CLASSES_ROOT; OpenKey(‘.‘+ext,True); WriteString(‘‘,ext+‘file‘); CloseKey; CreateKey(ext+‘file‘); OpenKey(ext+‘file\DefaultIcon‘,True); WriteString(‘‘,FileName+‘,0‘); CloseKey; OpenKey(ext+‘file\shell\open\command‘,True); WriteString(‘‘,FileName+‘ "%1"‘); CloseKey; Free; end;end;Ну а по нажатию какого-нибудь батона регистрируем!procedure TForm1.Button1Click(Sender: TObject);begin RegisterFileType(‘DelphiWorld‘, Application.ExeName);end;