如何为32位和64位应用程序维护单独的PATH变量?

时间:2009-06-03 17:39:43

标签: 64-bit environment-variables wow64

我正在转向64位Windows工作站,并将开发32位和64位应用程序。运行32位和64位版本的应用程序时,我需要维护不同的PATH环境变量。

最好的方法是什么?似乎应该可以继续进行所有注册表重定向。

谢谢, 戴夫

2 个答案:

答案 0 :(得分:3)

这不是直接可行的,因为系统范围的环境变量存储在HKLM \ System \ CurrentControlSet \ Control \ Session Manager \ Environment中,并且没有SYSTEM配置单元的WOW64重定向。

如果您的程序安装在Program Files下,您可以将基于%ProgramFiles%的路径添加到PATH环境变量中 - %ProgramFiles%在WOW64下运行时扩展为32位程序文件。

答案 1 :(得分:1)

我找到了一个“技巧”,它基于Windows对system32 / SysWOW64文件夹所做的重定向魔术。它适用于我的32位和64位Oracle客户端。 我在我的网站上记录了该程序:Use 32 and 64bit Oracle Client in parallel on Windows 7 64-bit for e.g. .NET Apps

相关部分:

  

打开一个提升的控制台,在%windir%\system32中创建一个指向64位oracle客户端安装的软链接,而在%windir%\SysWOW64中,您可以建立到32位安装的软链接。

  

修改您的PATH环境变量,并为其添加以下路径:c:\windows\system32\11g。请注意,%WINDIR%中不会展开%PATH%