Итак, я не могу связать свою программу с конкретным типом файла, не заставляя бедного пользователя вводить пароль администратора (это может быть нормально для домашних пользователей , но это огромная проблема для пользователей в корпоративной среде). В этом случае единственным решением является создание ассоциации только для текущего пользователя.
Я пробовал это, но что-то не работает.
Если я поймите правильно, я должен написать ключ вроде (скажем) '.mp3' в ctCurUserFileExt и написать в нем что-то вроде 'my_file'. Затем в ctCurUserClases я добавляю такой ключ:
WriteReg_String(RootKey, ctCurUserClases+ 'my_file\shell\open\command', '', Application.ExeName+ ' "%L"', TRUE)
Однако, когда я дважды щелкаю файл , Windows спрашивает меня, с помощью какого приложения следует его открывать.
Вот константа:
CONST
RootKey= 'HKEY_CURRENT_USER';
ctCurUserFileExt= '\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\';
ctCurUserClases = '\Software\Classes\';