为BOTH x86和x64编译非托管可执行文件

时间:2010-06-03 23:59:42

标签: windows winapi 64-bit

有没有办法编译EXE文件,以便它可以在x86和x64中本机运行?类似于:编译两个代码库并将它们打包成一个可执行文件。

我知道.NET代码可以在“任何cpu”模式下运行,但这不是我想要的。

2 个答案:

答案 0 :(得分:2)

32位可执行文件将在32位和x64 Windows计算机上本机运行。在32位PE文件中执行x64执行的唯一方法是使用undocumented gate,我高度怀疑任何人在实践中使用,因为它高度依赖于版本(和无证)。

然后你再这样做,32位二进制文​​件将执行64位版本的二进制文件并在检测到64位CPU时退出...

答案 1 :(得分:1)

您可以采用Process Explorer方法。在您的32位二进制文​​件中嵌入64位二进制文​​件作为资源。如果在64位计算机上启动32位二进制文​​件,请提取64位二进制文​​件并启动它。