我们在 installshield vr 6.3 中开发了一个设置。它是一个可自我提取的单一设置。它在大多数 Windows 版本上都可以正常工作,但在 Windows server 2003 64 位的执行模式下,当执行 RD 时,它会针对 WINDIR 返回用户 Windows 目录,即c:\documents & settings\fcuser\windows而不是C:\Windows。根据http://support.microsoft.com/?kbid=186499,当我更改安装程序的兼容性位时它应该可以正常工作,但它没有。我也尝试更改这些键的兼容性位(INSTRUN、SETUP 和 SETUP1),但它也不起作用。但是当我通过提取它在自提取中运行设置时,它工作正常。
问问题
736 次
1 回答
0
InstallShield 6.3 已有 10 年历史,在 Windows 2000 刚刚问世时发布。当时没有 64 位的 Windows 操作系统。我对你遇到麻烦并不感到惊讶。您真的应该考虑使用现代版本的 InstallShield,或者如果升级在经济上不可行,则迁移到 Wix/NSIS 之类的东西。
当我解决使用 WINDIR 时,您可以尝试获取此注册表值:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRoot
或者尝试获取这个环境变量的值:
%SYSTEMROOT%
于 2010-04-29T15:42:01.330 回答