VS2019汇编 错误 【 MSB3721】和【A2026】 constant expected

2023-05-16

记录一篇关于VS编译asm报错的问题。
在这里插入图片描述

报错一:

错误	A2026	constant expected  E:\masm32\include\winextra.inc	11052	
错误	A2026	constant expected  E:\masm32\include\winextra.inc	11053	

这个报错是因为VS中MSVC工具及不支持masm导致的。

报错二:

错误  MSB3721	命令“ml.exe /c /nologo /Zi /Fo"Debug\1.obj" /I "E:\masm32\include" /W3 /errorReport:prompt  /Ta1.asm”已退出,返回代码为 1

或者

错误  MSB3722	命令“ml64.exe /c /nologo /Zi /Fo"Debug\1.obj" /I "E:\masm32\include" /W3 /errorReport:prompt  /Ta1.asm”已退出,返回代码为

一个是"ml.exe",另一个"ml64.exe",这是因为两者生成平台一个是win32,一个是x64,如下:
在这里插入图片描述
这个报错是因为编译失败,不管是因为代码有bug,或者masm32的路径没有配置好,或者说VS中某些工具集版本不匹配等各种因素,都会报这个【MSB3721】/【 MSB3721】的错误。

所以此处实际是因为报错一的存在,导致没有编译成功,进而有了报错二。

解决方案

第一步:修改MSVC版本

这个【A2026】报错是MSVC版本过高导致的。

使用Visual Studio installer修改你当前VS的MSVC版本:
修改——单个组件——MSVC。
在这里插入图片描述
如果你的VS installer不识别你已经安装了VS,那是因为你把安装VS后的downloads删除了,重新下载VS即可(下载完后不要再把downloads文件夹删了)。

MSVC的版本要低于14.26.28801,如下,而且注意区分x64/x86和ARM,不要点错了。最好选择14.20,14.21。
在这里插入图片描述

然后用VS打开相应汇编所在项目,修改MSVC的版本:
项目——属性——高级——MSVC工具集版本
在这里插入图片描述

第二步:链接masm32库

重新下载VS后可能需要重新配置,如果只是更新MSVC的话可能不需要重新配置。

确认对masm32库链接,即项目属性中 \masm32\include和 \masm32\lib配置完成:

在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VS2019汇编 错误 【 MSB3721】和【A2026】 constant expected 的相关文章

随机推荐

  • git 设置代理和取消代理

    本地开启VPN后 xff0c GIt也需要设置代理 xff0c 才能正常略过GFW xff0c 访问goole code等网站 设置如下 xff08 可复制 xff09 xff1a git config global https proxy
  • 上下文切换理解

    1 上下文的理解 上下文是指 xff0c 每次执行前 xff0c 都会使用需要依赖两个环境 xff0c 分别是CPU寄存器 xff08 cpu中容量小但是速度很快的内存 xff09 和程序计数器 xff08 cpu正在执行的程序位置或者是准
  • debian-11版本虚拟机无法登入root账号

    debian11创建虚拟机时我们设置了root账户密码 xff0c 然而在登入时却在未列出中无法登入root账户 xff0c 如图 1 我们登入普通账号 xff0c 这里不提权是无法保存文件的 enter 输入 i 进入编辑模式 在这个位置
  • 整数加减运算的二进制表示

    两位整数的加减都可看做 一个数加上另一个数 xff0c 首先我们要把数据的二进制表示转化成补码 xff0c 因为在计算机内部 xff0c 数据的加减是按补码进行运算的 A补 43 B补 61 A 43 B 补 xff08 mod 2 n 4
  • TCP服务器端、客户端通讯(赋源码)

    实现通讯 xff0c 我们首先要知道是怎么样的一个流程 xff0c 下图是我画的一个通讯流程图 xff1a 一 Linux服务器端 我是在Ubuntu20 04下进行的 xff0c 使用的是C 43 43 xff0c 引入头文件socket
  • 超详细正点原子STM32F429开发板视频教程笔记01

    文章目录 前言一 GPIO入门知识二 寄存器描述和配置方法1 GPIO寄存器 总结 前言 买了一块正点原子阿波罗stm32f429开发板 xff0c 趁暑假有空看看教学视频 xff0c 之前看过一部分所以从GPIO的原理和配置开始写笔记 提
  • 软件测试之项目总结全攻略

    在我们测试工作过程中 xff0c 由于公司业务发展 xff0c 快速迭代等原因 xff0c 我们遇到的项目以小项目居多 更新界面元素 xff0c 上个活动页 xff0c 优化一下原有的功能等等 xff0c 加上事情繁琐 xff0c 任务多
  • 简历中的项目经历可以怎么写?

    概述 工作这10多年来 xff0c 也经常做招聘的工作 xff0c 面试过的人超过50人次了 xff0c 而看过的候选人的简历则有几百份了 xff0c 但是清晰且能突出重点的简历 xff0c 确实很少遇到 这里基本可以说明一个问题 xff0
  • 教你用Python写一个京东自动下单抢购脚本(Python实现京东自动抢购)

    很多朋友都有网购抢购限量商品的经历 有时候蹲点抢怎么也抢不到 今天小编带你们学习怎么用Python写一个京东自动下单抢购脚本 以后再也不用拼手速拼网速啦 快来一起看看吧 1 问题背景 经过无数次抢购失败后 xff0c 发现商家会不定时的放出
  • 千里独行Thousands of miles to ride alone

    关于三国时期有很多流行的故事 其中最著名的就是千里独行 关羽保护二嫂 xff0c 从徐都出发 xff0c 经过五门 xff0c 斩六将 xff0c 终于在古城与刘备 张飞两兄弟重逢 现在 xff0c 你的任务是为关羽找到跑得比兔子还快的兄弟
  • 北理工-【操作系统】(3)进程通信与死锁

    试题 1 在消息缓冲通信机制中 xff0c 使用的临界资源是 选择一项 xff1a A 信箱 B 整个消息队列 C 没有临界资源 D 消息队列中的某个缓冲区 正确答案是 xff1a 整个消息队列 试题 2 下列关于死锁的叙述中 xff0c
  • linux内核RAID设备管理工具---mdadm

    Linux内核中有一个md multiple devices 模块在底层管理RAID设备 xff0c 它会在应用层给我们提供一个应用程序的工具mdadm xff0c mdadm是linux下用于创建和管理软件RAID的命令 mdadm命令常
  • 北理工·-【操作系统】(2)进程、线程与调度

    试题 1 若系统中只有用户级线程 xff0c 则处理机调度单位是 选择一项 xff1a A 程序 B 线程 C 进程 D 作业 正确答案是 xff1a 进程 试题 2 为了照顾紧迫型作业 xff0c 应采用 选择一项 xff1a A 优先级
  • 北理工-【操作系统】(1)概述

    试题 1 下列关于批处理系统的叙述中 xff0c 正确的是 选择一项 xff1a A 用户不能直接干预自己作业的执行 B 批处理操作系统追求的目标是响应时间 C 批处理操作系统的系统资源利用率不高 D 批处理操作系统的系统吞吐量较小 正确答
  • 关于python使用playsound播放音频:指定的设备未打开,或不被 MCI 所识别。

    python中使用playsound函数是出现以下报错 xff1a Error span class token number 263 span span class token keyword for span command span
  • 关于python中name ‘self‘ is not defined几种处理

    对python小白 xff1a 在函数定义时 xff0c 要有self的参数 span class token keyword def span span class token function video demo span span
  • python3.10安装dlib19.22时报错的一种情况

    具体报错找不到了 xff0c 安装时警告和报错很长很长 这种一般是版本不匹配导致的 xff0c 我的是python3 10 xff0c 安装最新的dlib19 22 19 21 19 20时一直报错 xff08 先确认 VS中 C 43 4
  • 用python随机数生成不含[ ]的矩阵

    使用python生成大型矩阵用于测试程序 span class token keyword from span numpy span class token keyword import span random span class tok
  • VS汇编错误A2026 constant expected 和 MSB3721 命令“ml.exe /c /nologo ....”已退出,返回代码为1

    记录一篇关于VS编译asm报错的问题 如下 xff1a 错误 MSB3721 命令 ml span class token punctuation span exe span class token operator span c span
  • VS2019汇编 错误 【 MSB3721】和【A2026】 constant expected

    记录一篇关于VS编译asm报错的问题 报错一 xff1a 错误 A2026 constant expected E span class token operator span masm32 include winextra span cl