安装错误:无法访问自定义操作的 VBScript 运行时

安装错误:无法访问自定义操作的 VBScript 运行时

我正在尝试在 Windows 2008 服务器上安装一个软件包。该软件包拒绝安装。我已使用以下命令行运行安装程序以获取日志文件:

/lxv 安装日志.txt

这是我在文件中看到的错误:
错误 2738。无法访问自定义操作的 VBScript 运行时

我环顾四周,发现有些人说这是必要的:
Regsvr32 vbscript.dll

这是因为在 Windows Server 2008 系统上,由于安全问题,VBScript.dll 未在 HKeyCurrent_User 中注册,仅在 HKeyLocal_Machine 中注册。这看起来不太对劲。

我最初尝试以管理员身份运行安装程序,但没有成功。
我编写了一个显示消息框的小型 VBScript 程序,它似乎运行正常。在文件:Test.VBS 中,我有以下内容:

msgbox("Hello world")

当我双击它时,会出现一个消息框,暗示 VBScript 确实可以运行。
我已在机器上禁用 UAC,但仍然出现错误。

根据 Evan 的建议,我已验证以下注册:

HKCU\SOFTWARE\Classes\CLSID\{B54F3741-5B07-11CF-A4B0-00AA004A55E8}

它确实存在,而且看起来不错。
作为另一项测试,我从管理员控制台运行了 Regsvr32 vbscript.dll,然后重试。仍然没有运气,我得到了和以前一样的错误。

答案1

VBScript 自定义操作的形式很糟糕。你应该狠狠地教训一下那个安装程序包的制作者。

您是否仔细检查过以下注册表项是否不存在:

HKCU\SOFTWARE\Classes\CLSID\{B54F3741-5B07-11CF-A4B0-00AA004A55E8} 

其次,当您运行“REGSVR32 vbscript.dll”命令时,您是否从升高命令提示符?

MSIEXEC 不会加载在 HKEY_CURRENT_USER 中注册的 VBscript.dll 的原因是 MSIEXEC 以提升权限运行,而无特权的用户可能会注册特洛伊木马 VBscript.dll 并利用该木马在提升权限的上下文中执行代码。这是一项安全功能,而不是错误。

答案2

您是以“管理员”还是“管理员”身份运行安装程序的?如果是前者,那么可能是 UAC 干扰。以管理员身份登录并重新运行安装程序。

最近,ServerFault 上经常出现此问题。如果您坚持在(非终端)服务器上使用 UAC,那么以管理员身份登录是避免此类问题的最简单方法。

JR

相关内容