Visual Studio 2022编译x86 或者 win32程序时的错误MSB6006

Visual Studio 2022是第一个Visual Studio x64的IDE,但是也不是意味着只能编写x64的程序,也可以编写x86的程序。但是如果直接编译x86版本,可能会遇到如下错误
在这里插入图片描述
MSB6006 Cl.exe已退出,代码为2。

这个错误如果在网上搜索解决方案,多半是一大堆相似的解决方案:关闭防火墙、杀毒软件,或者程序中有什么没有初始值,没有返回值错误等。

这些原因都与我们这个问题的无关。

真正的原因可能与Visual Studio 2022程序是一个x64程序有关。即使编译x86版本,也必须用x64的工具集(是不是Visual Studio 2022没有x86的工具集,这个没有证实)。

在项目的工程属性中配置x86平台 (Win32)【高级】-【首选的生成工具体系结构】-【64位】

在这里插入图片描述
这样就能成功编译x86程序了。

可能你会有疑惑,这样编译出来的是x86程序吗?因为我们用的是x64的工具集呀。

我们可以用visual studio的工具dumpbin.exe验证。在visual studio自带的命令工具中已经设置好了环境,通过在这个命令行工具中调用。

在这里插入图片描述
我编译的是一个dll,我们来看一下这个dll是不是x86的

dumpbin /headers **.dll

在这里插入图片描述
可以看到确实是x86的。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值