在 Windows 2008 R2 上安装 %windir%\Program Files (x86) 之外的 32 位软件

在 Windows 2008 R2 上安装 %windir%\Program Files (x86) 之外的 32 位软件

我有一个 32 位应用程序,需要在 Windows 2008 R2 服务器上安装和测试。此应用程序依赖于第三方 32 位软件(Oracle 10g 客户端和 TCL 运行时 - 应用程序的很大一部分是 TCL 脚本)。此应用程序还会创建要运行的 Windows 服务。

该产品的当前版本要求将其二进制文件(.exes 和.dlls)和脚本安装到D:\App。此路径在脚本和配置文件中是硬编码的。它还要求将 TCL 运行时安装到D:\TCL

我担心如果我尝试在 之外安装 32 位二进制文​​件%windir%\Program Files (x86),那么会发生奇怪的事情;我的担心有道理吗?在 Windows 2008 R2 之外运行 32 位应用程序是否有任何副作用或问题?%windir%\Program Files (x86)如果二进制文件在文件夹之外运行,我们的应用程序是否需要对它们进行任何特殊处理%windir%\Program Files (x86)

答案1

Windows 从可执行文件中检测 32/64 位,因此理论上 32 位二进制文​​件可以安装在任何地方。

设置两个 Program Files 目录的原因主要是为了消除同一程序同时存在 32 位和 64 位安装的风险,以及它们的安装文件产生冲突和/或性能问题。

但是,这个问题还不够清楚,所以我只能说,这也取决于安装作业的具体内容。Oracle 安装尤其庞大和复杂。虽然我相信这有成功的机会,但任何事情都有可能发生。你只需要尝试一下(如果你不想破坏你的服务器,可以使用虚拟机)。

如果您尝试在 64 位 IIS 上运行 32 位扩展,则 IIS 会遇到一些问题。
另请参阅在 64 位 Windows 上运行 32 位应用程序

答案2

我有一个使用 Oracle Client 和 .net 框架的应用程序,此外还有一些自定义 dll 文件,我已经将其安装在 d:\app 文件夹中长达 3 周,并且我每天都在监控它(它是一个内部应用程序) - 没有发现任何异常。我的应用程序还创建了一些服务,并且运行良好,没有任何故障。

答案3

这个应用程序有很多缺点 - 安装到硬编码位置、多个服务、硬编码配置路径、需要依赖项才能使用非标准安装。我觉得是时候重新设计了。

相关内容