Как добавить значение в ключ hkey_classes_root, где установлено приложение
Решено!!
Я пытаюсь создать собственный URL-протокол для своего приложения, который будет запускать мое приложение, когда они посещают или щелкают ссылку на myapp:start
Моя проблема в том, как узнать, где пользователь установил мое приложение. Может ли установщик msi указать местоположение при регистрации HKEY_CLASSES_ROOT в реестре?
HKEY_CLASSES_ROOT
myapp
(Default) = "URL:myapp Protocol"
URL Protocol = ""
DefaultIcon
(Default) = "myapp.exe,1"
shell
open
command
(Default) = "C:\Program Files\MyAppFolder\MyApp.exe" "%1"
Я хотел изменить путь "C:\Program Files\MyAppFolder\MyApp.exe", чтобы пользователь установил мое приложение во время процесса установки.
Решение
HKEY_CLASSES_ROOT
myapp
(Default) = "URL:myapp Protocol"
URL Protocol = ""
DefaultIcon
(Default) = "myapp.exe,1"
shell
open
command
(Default) = "[TARGETDIR]MyApp.exe "%1""
[TARGETDIR] автоматически изменится на то, где пользователь установил файл, например, "C:\Program Files\MyAppFolder\"
Для получения дополнительной информации перейдите по этой ссылке -> Регистрация приложения в схеме URI
1 ответ
В проекте установки Visual Studio вы можете использовать [TARGETDIR]
переменная при создании вашего ключа реестра.
Эта переменная автоматически устанавливается в целевой каталог, в который устанавливается приложение, просто добавьте свой .exe
файл до конца.