Visual Studio 2022无法构建运行指定MASM64文件,旧文件已删仍被识别
解决VS2022构建MASM64程序时引用已删除旧文件的问题
问题说明
已删除MASM64项目中的旧源文件,但Visual Studio 2022仍尝试调用该已删除文件,导致当前代码无法构建,最终报错:
项目「MASM64ONLY.vcxproj」构建完成——失败。
当前使用的MASM64代码:
.CODE ; <------ ; mov <dest>, <src> ; ; mov <register>, <memory> ; mov <register>, <immediate value> ; mov <register>, <register> ; mov <memory>, <register> Example PROC mov r8, 0 ; clear mov r8b, 11h ; move 8 bits mov r8w, 2222h ; move 16 bits mov r8d, 33333333h ; move 32 bits mov r8, 4444444444444444h ; move 64 bits mov rax, r8 ; move from register to register mov rax, 0 ; clear mov al, 11h ; move into lower 8 bits of 16 bit register mov ah, 22h ; move into higher 8 bits of 16 bit register mov ax, 3333h ; move 16 bits mov eax, 44444444h ; move 32 bits mov rax, 5555555555555555h ; move 64 bits mov r8, 0FFFFFFFFFFFFFFFFh ; initialize mov r8b, 11h ; move 8 bits mov r8w, 2222h ; move 16 bits mov r8d, 33333333h ; !!! storing in the lower 32 bits will clear the top 32 bits !!! ret Example ENDP END
解决步骤
- 清理项目生成文件:点击菜单栏「生成」→「清理解决方案」,手动删除项目目录下的
Debug、Release文件夹以及.vcxproj.user配置文件 - 检查项目文件引用:右键项目→「属性」→「配置属性」→「MASM」→「常规」,确认所有路径和源文件条目都不指向已删除的旧文件;也可直接编辑
.vcxproj文件,删除所有涉及旧文件的引用行 - 重置VS缓存:关闭Visual Studio,删除项目目录下的
.vs隐藏文件夹,重新打开项目 - 配置程序入口点:右键项目→「属性」→「链接器」→「高级」,将「入口点」设置为
Example(与代码中定义的PROC名称一致)
内容的提问来源于stack exchange,提问作者IEYT
相关产品推荐
相关产品推荐

