![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Создание расширения [D6, WinXP]
Gaffer © (2005-04-16 18:53:00)1)не подскажите компанент для создания расширения?
2)как зарегистрировать за своей прогой новое расширение?
3)дайте хотя бы ссылку.
Заранее спасибо!
Экспериментатор (2005-04-17 14:58:00) [1]Удалено модератором
Экспериментатор (2005-04-17 14:53:00) [2]Пардон за дубль
Экспериментатор (2005-04-17 14:52:00) [3]Например
unit uRegFile;
interface
uses Registry;
procedure RegisterFileType(FileType, FileTypeName,
Description : string; IconID : integer; ExecCommand:string);
implementation
uses Windows, SysUtils;
procedure RegisterFileType(FileType, FileTypeName,
Description : string; IconID : integer; ExecCommand:string);
begin
if (FileType='') or (FileTypeName='') or (ExecCommand='') then exit;
if FileType[1]<>'.' then FileType:='.'+FileType;
if Description='' then Description:=FileTypeName;
with TRegIniFile.create do
try
RootKey := HKey_Classes_Root;
WriteString(FileType, '', FileTypeName);
WriteString(FileTypeName, '', Description);
WriteString(FileTypeName + '\DefaultIcon', '' ,
ExecCommand+','+IntToStr(IconID));
WriteString(FileTypeName + '\shell\open\command','',
ExecCommand+' "%1"');
finally
Free;
end;
end;
end.
Функцию использовать например так:
RegisterFileType('app','MyApp.File', 'MyApp', 0, ParamStr(0));
Экспериментатор (2005-04-17 14:52:00) [4]Удалено модератором
Anatoly Podgoretsky (2005-04-16 20:25:00) [5]Компонент это слишком, хватит и функции Random в цикле
DARKir (2005-04-16 20:02:00) [6]Если нужно только для работы с этой программой, создай файл с этим расширением, а уже в программе опиши как текстовый или какой там тебе надо...
Ученик (2005-04-16 19:52:00) [7]самое простое, запустить regedit
посмотреть содержимое
HKEY_CLASSES_ROOT\.txt
HKEY_CLASSES_ROOT\txtfile\shell\open\command
для своего расширения сделать то же самое