如何在安装应用程序的hkey_classes_root键上添加值

Jef*_*ala 6 c# registry windows-installer visual-studio-setup url-protocol

解决了!!

我正在尝试创建我的应用程序的自定义URL协议,当他们访问或点击链接到myapp时启动我的应用程序:start

我的问题是如何知道用户安装我的应用程序的位置.在将HKEY_CLASSES_ROOT注册到注册表时,msi安装程序是否可以放置该位置?

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"
Run Code Online (Sandbox Code Playgroud)

我想将路径"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""
Run Code Online (Sandbox Code Playgroud)

[TARGETDIR]将自动更改为用户安装文件的位置,例如"C:\ Program Files\MyAppFolder"

有关更多信息,请单击此链接 - > 将应用程序注册到URI方案

Rud*_*ser 4

通过 Visual Studio 安装项目,您可以[TARGETDIR]在创建注册表项时使用该变量。

该变量会自动设置为应用程序安装到的目标目录,只需将.exe文件附加到末尾即可。