|
#1
|
|||
|
|||
Реестр
Код:
procedure Registrik; var s:string; Reg: TRegistry; begin Reg:=TRegistry.Create; Reg.RootKey := HKEY_CLASSES_ROOT; Reg.OpenKey('\*\shell', true); Reg.WriteString('Edit With Rnote', ''); Reg.OpenKey('\*\shell\Edit With Rnote\', true); s:='Edit With Rnote2'; Reg.WriteString('', s); Reg.OpenKey('\*\Shell\Open\', true); Reg.WriteString('', 'Îòêðûòü â Rnote1'); Reg.OpenKey('command\', true); s:='"'+Application.ExeName+'" "%1"'; Reg.WriteString('', s); Reg.Free; SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil); end; Вот код моего реестра на Дельфи. Создаться контекстное меню. Но возникла проблема "Неверный адрес". Код:
Reg.OpenKey('command\', true); s:='"'+Application.ExeName+'" "%1"'; Reg.WriteString('', s); То-есть этот адрес к файлу не видит. Или, что-то я намудрил! В чём ошибка адреса? |
#2
|
||||
|
||||
Код:
var registry: TRegistry; begin registry:=TRegistry.Create; try registry.RootKey:=HKEY_CLASSES_ROOT; registry.OpenKey('\*\shell\Rnote\', True); registry.WriteString('', 'Открыть в Rnote'); registry.OpenKey('\*\shell\Rnote\command', True); registry.WriteString('', Application.ExeName+' "%1"'); finally registry.Free; end; end; Пишу программы за еду. __________________ |