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

发布于 2024-07-23 06:46:51 字数 165 浏览 8 评论 0原文

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

做这个的最好方式是什么? 似乎所有正在进行的注册表重定向都应该是可能的。

谢谢, 戴夫

I am moving to a 64 bit Windows workstation, and will be developing both 32 and 64 bit applications. I will need to maintain different PATH environment variables when running a 32 vs. 64 bit version of my application.

What is the best way to do this? It seems like it should be possible with all of the registry redirection that goes on.

Thanks,
Dave

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

扭转时空 2024-07-30 06:46:51

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

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

This isn't directly possible since system-wide environment variables are stored in HKLM\System\CurrentControlSet\Control\Session Manager\Environment, and there is no WOW64 redirection of the SYSTEM hive.

If your program installs under Program Files, you could add your path based off of %ProgramFiles% to the PATH environment variable - %ProgramFiles% expands to the 32-bit program files when running under WOW64.

月竹挽风 2024-07-30 06:46:51

我发现了一个“技巧”,它基于 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% 中展开。

I found a "trick" which is based on the redirection magic that Windows does with its system32/SysWOW64 folder. It works quite well for my 32 and 64-bit Oracle Clients.
I have documented the procedure on my website: Use 32 and 64bit Oracle Client in parallel on Windows 7 64-bit for e.g. .NET Apps

Relevant parts:

Open an elevated console and in %windir%\system32 create a soft link to the 64-bit oracle client installation, while in %windir%\SysWOW64 you make a soft link to the 32-bit installation.

Edit your PATH environment variable and add the following path to it: c:\windows\system32\11g. Please note that %WINDIR% will not be expanded in %PATH%.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文