将 32 位和 64 位应用程序(使用相同的代码)编译成一个 exe
Compile 32 bit and 64 bit application (with same code) into one exe
我有 2 个使用全局挂钩的应用程序,它是为 Windows 10(64 位)构建的。一个是 32 位的,另一个是 64 位的。我能够将它们编译成 2 个独立工作的独立 exe 文件。但由于它们具有相同的代码,我希望将它们编译成一个 exe 文件,以满足它的 32 位和 64 位职责。我可以使用 Visual Studio 或其他方式做到这一点吗?
Windows PE EXE 格式不支持单个二进制文件中的多个 CPU 体系结构。
SysInternals 工具将 64 位 .exe 作为资源嵌入到 32 位可执行文件中,如果 IsWow64Process
为真,则提取并运行它。如果您选择这种技术,您还必须考虑到最近的 ARM64 机器是 Wow64,但只能模拟 32 位 x86 应用程序。
注意:Windows可以在不支持 Wow64 的情况下安装服务器核心,如果支持这些系统,则还必须分发 64 位二进制文件。
我有 2 个使用全局挂钩的应用程序,它是为 Windows 10(64 位)构建的。一个是 32 位的,另一个是 64 位的。我能够将它们编译成 2 个独立工作的独立 exe 文件。但由于它们具有相同的代码,我希望将它们编译成一个 exe 文件,以满足它的 32 位和 64 位职责。我可以使用 Visual Studio 或其他方式做到这一点吗?
Windows PE EXE 格式不支持单个二进制文件中的多个 CPU 体系结构。
SysInternals 工具将 64 位 .exe 作为资源嵌入到 32 位可执行文件中,如果 IsWow64Process
为真,则提取并运行它。如果您选择这种技术,您还必须考虑到最近的 ARM64 机器是 Wow64,但只能模拟 32 位 x86 应用程序。
注意:Windows可以在不支持 Wow64 的情况下安装服务器核心,如果支持这些系统,则还必须分发 64 位二进制文件。