我正在迁移到 64 位 Windows 工作站,并将开发 32 位和 64 位应用程序。在运行 32 位和 64 位版本的应用程序时,我需要维护不同的 PATH 环境变量。
做这个的最好方式是什么?似乎所有的注册表重定向都应该是可能的。
谢谢,戴夫
我正在迁移到 64 位 Windows 工作站,并将开发 32 位和 64 位应用程序。在运行 32 位和 64 位版本的应用程序时,我需要维护不同的 PATH 环境变量。
做这个的最好方式是什么?似乎所有的注册表重定向都应该是可能的。
谢谢,戴夫
这是不可能的,因为系统范围的环境变量存储在 HKLM\System\CurrentControlSet\Control\Session Manager\Environment 中,并且没有 SYSTEM 配置单元的 WOW64 重定向。
如果您的程序安装在 Program Files 下,您可以将基于 %ProgramFiles% 的路径添加到 PATH 环境变量 - 在 WOW64 下运行时,%ProgramFiles% 扩展为 32 位程序文件。
我发现了一个“技巧”,它基于 Windows 对其 system32/SysWOW64 文件夹所做的重定向魔术。它适用于我的 32 位和 64 位 Oracle 客户端。我在我的网站上记录了该过程:在 Windows 7 64 位上并行使用 32 和 64 位 Oracle 客户端,例如 .NET 应用程序
相关部分:
打开一个提升的控制台并
%windir%\system32
创建一个指向 64 位 oracle 客户端安装%windir%\SysWOW64
的软链接,同时创建一个指向 32 位安装的软链接。
编辑您的
PATH
环境变量并向其添加以下路径:c:\windows\system32\11g
. 请注意,%WINDIR%
不会在%PATH%
.