gpt4 book ai didi

apache - NSIS:检测 Tomcat 安装

转载 作者:行者123 更新时间:2023-11-28 23:04:10 25 4
gpt4 key购买 nike

我一直在尝试检测 Tomcat 是否安装在我的 NSIS 脚本中的主机系统上。这是执行此操作的部分

Section Tomcat
ClearErrors

Var /GLOBAL tomcatVersion
ReadRegStr $tomcatVersion HKLM "SOFTWARE\Apache Software Foundation\Tomcat\7.0\Tomcat7" "InstallPath"
;ExecWait "$EXEDIR\apache-tomcat-7.0.22.exe"
DetailPrint "$tomcatVersion"
SectionEnd

当我转到“regedit”并检查该特定键的路径时,它有一个值,但打印语句返回空白。

有人可以建议解决此问题和/或我可能遇到的任何错误的最佳方法是什么吗?

我注意到一件有趣的事情,如果在上面的代码中,如果我将 ReadRegStr 命令指向读取

HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" "CurrentVersion"

它返回一个值,因此从语法上讲,代码确实有效。

最佳答案

  • 如果 Tomcat 安装程序是 64 位安装程序,则 32 位进程将找不到该 key ,在 NSIS 中,您可以使用 SetRegView 64

  • 如果您在脚本中使用 RequestExectionLevel 并且 Tomcat 安装程序由 UAC 虚拟化,那么您必须从 VirtualStore 中读取它(在你的情况下不太可能,因为你可以在 regedit 中看到 key )

  • Process Monitor调试注册表问题也很方便...

关于apache - NSIS:检测 Tomcat 安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12739044/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com