如何在64位操作系统中构建32位C ++ CLR项目

时间:2014-04-01 19:11:44

标签: c++ .net clr 32bit-64bit

我的操作系统是Windows 7,64位。

在Visual Studio中,我正在尝试将此C ++ CLR项目构建为32位,但在构建它之后,当我在其上运行Dependency Walker时,它使用的每个系统dll(例如,kernel32)是64位,因此给出错误“找到了具有不同CPU类型的模块”。

我已经将平台选项设置为Win32(顺便说一下,这是对的吗?我预计x86,是Win32的等价吗?)。
我还检查了Linker->Advanced->Target Machine中的MachineX86是否等于EDIT 1:

我还能做些什么来构建针对32位的内容。

corflags由于HansPassant质疑Dependency Walker的可靠性,我使用Version : v4.0.30319 CLR Header: 2.5 PE : PE32 CorFlags : 0x10 ILONLY : 0 32BITREQ : 0 32BITPREF : 0 Signed : 0 检查了位数。 结果如下:

{{1}}

根据这个this答案,显然dll的目标是“任何CPU”。

我已经定位了32位,为什么会这样?

0 个答案:

没有答案