Уважаемые авторы вопросов! Большая просьба сообщить о результатах решения проблемы на этой странице. Иначе, следящие за обсуждением, возможно имеющие аналогичные проблемы, не получают ясного представления об их решении. А авторы ответов не получают обратной связи. Что можно расценивать, как проявление неуважения к отвечающим от автора вопроса.
09-08-2005 03:20
Если память не изменяет, то информация на эту тему есть в книге Тейксейры и Пачеко
Изучи ветку реестра HKEY_CLASSES_ROOT\*
Затем тебе нужно будет для своей программы записать туда необходимые ключи, и всё!
Я сам разбирался только для определенных типов файлов и каталогов. Проблем особых не возникало.
Вот как регистрирую определенный тип:
procedure RegisterFileType(FileType,FileTypeName, Description, 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+'\shell\open\command','',ExecCommand+' "%1"');
finally
free;
end;
end;
Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter. Функция может не работать в некоторых версиях броузеров.