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

标签 java path installation registry

我使用 innosetup 来安装我的 java 程序,安装程序将生成运行 key 。 我想获取安装路径

innosetup 行:

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

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

最佳答案

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

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

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

关于java - 在注册表中找到我的应用程序安装的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7231903/

相关文章:

java - 暂停 kafka 在响应式(Reactive) Kafka 中读取

java - 在多线程应用程序中停止线程

java - 用于字符串获取不带空格的单词的正则表达式,但其中一部分可以包含空格

mysql - 如何允许用户更轻松地在用户计算机上安装 MySQL,以便他们可以通过 Java 应用程序连接到它?

download - 我在哪里可以获得 cabarc 实用程序?

deployment - 如何从 .reg 文件生成 WiX XML?

java - Spring security - 限制对我的更新个人资料页面的访问

SVN - 更改工作副本以指向新的 svn 路径

python - 如何使用 Python 修复 Pyx 模块中的回溯错误?

c# - 如何创建和解析相对路径?