我们可以创建一个VC可执行文件,它可以在32位和64位Windows上本机工作吗?

有没有办法构建一个VC项目,以便它创建的dll / exe将作为32位 Windows操作系统上的32位应用程序和64位Windows操作系统(不是WOW64)上的64位应用程序.

我知道使用/ ANYCPU选项的C#应用​​程序是可能的.

解决方法

CLR为/ ANYCPU选项提供特殊的加载程序支持.

如果你真的想为本地人做这件事,最好的方法是:

>为32位和64位构建二进制文件
>作为构建32位二进制文​​件的一部分,请将64位二进制文​​件包含为资源
>在32位计算机上,只需运行32位二进制文​​件
>在64位计算机上,当32位二进制文​​件运行时,解压缩64位二进制资源,将其写入磁盘,然后从那里运行它

这就是Sysinternals工具的工作方式(将Process Explorer下载到64位计算机上并运行它:您将看到它将procexp64.exe写入磁盘,然后从那里运行它).这是一个黑客,但它的工作原理.

相关文章

一.C语言中的static关键字 在C语言中,static可以用来修饰局...
浅谈C/C++中的指针和数组(二) 前面已经讨论了指针...
浅谈C/C++中的指针和数组(一)指针是C/C++...
从两个例子分析C语言的声明 在读《C专家编程》一书的第三章时...
C语言文件操作解析(一)在讨论C语言文件操作之前,先了解一下...
C语言文件操作解析(三) 在前面已经讨论了文件打开操作,下面...