installshield:Windir 返回 c:\documents & settings\fcuser\windows 而不是 c:\windows
我们有一个在 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),但它也不起作用。但是当我通过解压在自解压中运行设置时,它工作得很好。
we have a setup developed in installshield vr 6.3. it is a self extractable single setup. it work fine in most on most of the Windows version but on Windows server 2003 64bit in Execution mode when doing RD it return user windows directory against WINDIR i.e. c:\documents & settings\fcuser\windows instead of C:\Windows. According to http://support.microsoft.com/?kbid=186499 it should work fine when i change the compatibility bit of Setup but it didn't. i tried changing compatibility bit of these key too (INSTRUN, SETUP and SETUP1 ) but it didn't work either. but when i when i run the setup within the self extractable by extracting it work fine.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
InstallShield 6.3 已有 10 年历史,是在 Windows 2000 刚刚问世时发布的。当时还没有 64 位 Windows 操作系统。你遇到麻烦我并不感到惊讶。您确实应该考虑使用 InstallShield 的现代版本,或者如果经济上无法升级,则迁移到 Wix/NSIS 之类的东西。
当我使用 WINDIR 时,您可以尝试获取此注册表值:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRoot
或者尝试获取此环境变量的值:
%系统根目录%
InstallShield 6.3 is 10 years old, released when Windows 2000 had just come out. There were no 64-bit Windows OSes at that time. I'm not surprised you're having trouble. You really should think about using a modern version of InstallShield, or migrate to something like Wix/NSIS if upgrading is not financially possible.
As I work-around to using WINDIR, you could try getting this Registry value:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRoot
Or try to get the value of this environment variable:
%SYSTEMROOT%