Я недавно (сегодня) начал вмешиваться в мой реестр в Delphi. :)
все работает хорошо, и мой пользовательский тип файла теперь открывается с моей программой, но есть 2 проблемы, которые я не могу решить.
1) Я хотел, чтобы опция «открывалась» из всех типов файлов, поэтому я добавил
reg := TRegistry.Create;
reg.RootKey := HKEY_CLASSES_ROOT;
reg.LazyWrite := false;
reg.OpenKey('*\OpenWithList\EncryptionSystem', true);
reg.WriteString('','C:\Program Files\EncryptionSystem\EncryptionSystem.exe "%1"');
reg.CloseKey;
reg.free;
Если я смотрю в реестре с помощью regedit, он точно там, как и должно быть, но когда я щелкаю правой кнопкой мыши на файле и выбираю Открыть с помощью, его там нет ...
Итак, я добавил это
reg.OpenKey('*\shell\Encrypt\command', true);
reg.WriteString('','C:\Program Files\EncryptionSystem\EncryptionSystem.exe "%1"');
reg.CloseKey;
Это работает для каждого файла, но опция находится справа вверху с «open» и «edit».
Я хочу, чтобы он появился в подразделе меню, как это делают большинство программ ...
Я понял, что мне нужно поиграть с шеллекстом, но я не понимал структуру их работы с обработчиками контекстного меню ... Я все равно узнал все, что получил, прочитав реестр ... Я знаю название шеллекста появляется позже после «. *», но о значении больших дряблых клавиш я понятия не имею.