【发布时间】:2013-06-08 12:11:15
【问题描述】:
到目前为止,我们的应用程序只使用了 32 位二进制文件,这已经足够了。 慢慢地,我们看到需要为某些组件引入 64 位版本(除了 32 位版本),主要是为了与我们自己没有编写的其他 64 位组件进行接口。
出现的一个问题是,我们是否要将 64 位组件(EXE + DLL)命名为与 32 位组件相同的名称并将它们放在另一个目录中,或者是否要以不同的方式命名它们(例如 tool.exefor 32bit 和 @ 987654322@ 对于 64 位)并将它们保留在同一目录中。
微软似乎已经为大多数 Windows 组件 (WoW64) 采用了不同目录和相同名称的路线,如果整个应用程序是 64 位的,我们也有理由只使用 Program Files 而不是 64 位。 Program Files (x86) 目录。
但是,在我们的例子中,我们有一个主要是 32 位的应用程序,它使用一些 64 位组件(可执行文件)来完成 64 位的工作,其中一些我们还使用了一个 32 位版本。
那么,我们是重命名组件并将它们放在同一个二进制目录中,还是保持二进制名称相同并将其放在子目录中?
有什么好处和坏处?
【问题讨论】:
-
当然,这只是一个简单的部署细节。 64 位程序进入 c:\program 文件,32 位程序进入 c:\program 文件 (x86)。没有什么比这更复杂的理由了。
-
@Hans - 恕我直言,拆分单个应用程序,恰好由多个可执行组件组成 - 请注意这些组件对用户是透明的,只有用户实际启动的 32 位主应用程序-- 将它们分成 PF 和 PF(x86) 目录听起来不是一个好主意。如果主应用程序是 64 位的,它会转到 PF 而不是 PF(x86),但这里不是这种情况。
标签: windows visual-c++ dll 32bit-64bit binaryfiles