Hallo,
ich wollte einen Kontext-Menü Eintrag bei Doc-Dateien im Explorer erzeugen. Das klappt auf Basis der Delphi-Demo gut. Nun habe ich
UpdateRegistry verändert, um DOC-Dateien zu bearbeiten:
Delphi-Quellcode:
procedure TContextMenuFactory.UpdateRegistry(Register: Boolean);
var
ClassID: string;
begin
if Register then begin
inherited UpdateRegistry(Register);
ClassID := GUIDToString(Class_ContextMenu);
CreateRegKey('.doc\shellex', '', '');
CreateRegKey('.doc\shellex\ContextMenuHandlers', '', '');
CreateRegKey('.doc\shellex\ContextMenuHandlers\ContMenu', '', ClassID);
if (Win32Platform = VER_PLATFORM_WIN32_NT) then
with TRegistry.Create do
try
RootKey := HKEY_LOCAL_MACHINE;
OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions', True);
OpenKey('Approved', True);
WriteString(ClassID, 'Delphi Context Menu Shell Extension Example');
finally
Free;
end;
end
else begin
DeleteRegKey('.doc\shellex\ContextMenuHandlers\ContMenu');
DeleteRegKey('.doc\shellex\ContextMenuHandlers');
DeleteRegKey('.doc\shellex');
inherited UpdateRegistry(Register);
end;
end;
Leider erscheint gar nichts im Kontextmenü des Exploreres. Probiere ich das gleiche mit der noch nicht registrierten Endung .dor, funktioniert alles wie gewünscht.
Was muss ich bei Doc-Datein bzw. bei bereits registrierten Dateien beachten?