找到我在注册表中安装的应用程序的路径

我使用innosetup安装我的程序java,安装程序将生成密钥运行。 我想得到安装的路径

innosetup线:

Root: HKLM; Subkey: "Software\Microsoft\Windows\CurrentVersion\Run"; ValueType: string; ValueName: "Mi_Programak"; ValueData: "{app}\esperoo.exe";" 

该类将调用文件,但我需要安装路径,如何在注册表中找到我的应用程序名称的安装路径?

我不知道安装的程序文件夹是否有内置的注册表项,但您始终可以创建自己的注册表项。 您有安装程序脚本在安装期间创建注册表项,使用{app}作为注册表值的占位符。

从Java注册表中的任意键读取Java可以通过一些技巧来完成,但为了保持标准的JDK类和记录的function,最好使用标准的Preferences接口。 系统根目录下的首选项将作为HKLM \ Software \ JavaSoft \ Prefs \下的键放置。 请记住,大写字母有一些奇怪 – 每个大写字母都带有斜杠前缀,因此请保持键的小写名称。 例如installdir而不是InstallDir

总结:要查找安装目录,请将Software \ Java \ Prefs下的注册表项添加到安装程序脚本中,并且可以使用java.util.Preferences的系统根目录在运行时检索该值。