前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >命令“"xxx.exe" xxx”已退出,代码为 3/123/9009。VS 的这些编译错误代码代表了什么意思?

命令“"xxx.exe" xxx”已退出,代码为 3/123/9009。VS 的这些编译错误代码代表了什么意思?

作者头像
walterlv
发布2018-09-18 13:46:33
6.4K0
发布2018-09-18 13:46:33
举报

命令“"xxx.exe" xxx”已退出,代码为 3/123/9009。VS 的这些编译错误代码代表了什么意思?

发布于 2018-03-09 00:44 更新于 2018-04-16 10:56

我们在 cmd 中输入常见命令的时候,如果命令输入错误或使用错误,cmd 中会提示错误原因,帮助我们定位并解决问题。然而如果相同的命令放到了 Visual Studio 的生成事件中,我们就只能得到 Visual Studio 返回的错误代码了。为了能够快速地根据错误代码大致猜测错误原因,本文整理了一部分错误代码的通用原因。


代码语言:javascript
复制
命令“"xxx.exe" xxx”已退出,代码为 n。

命令的格式为:

命令 参数1 参数2 参数3

错误代码: 3

系统找不到指定的路径。

这意味着我们在编译生成命令中写的“命令”部分,在那个路径下并不存在命令中写的可执行文件。比如:

  • 文件或文件夹的名称写错了,或者写上级目录时“..”的层数不对
  • 依赖的是一部分人开发环境中才有的可执行文件,如果你的开发环境中没有这个文件,就会是此错误
  • 依赖的文件需要提前生成但还没有生成,某些 BT 的项目会要求先执行一些编译命令以生成命令的可执行文件

错误代码: 123

文件名、目录名或卷标语法不正确。

如果路径字符串根本无法拼出路径,就会引发此错误。比如:

  • D:\walterlv.github.io\D:\Bin\Debug 这样的路径就是不合理的

一般人当然不会写出这样的命令出来,但如果路径中间有一些环境变量作为占位符,实际执行时本来期望填入相对路径的地方填入了绝对路径就会这样。

错误代码: 9009

‘xxx’ 不是内部或外部命令,也不是可运行的程序或批处理文件。

  • 命令写错了,而不是可执行文件写错了
    • 比如 xcopy 写成了 xcapy
  • 可执行文件因为缺少引号包括路径中的空格,导致被识别成无法识别的命令
    • 比如 C:\Program Files\XXX 因为没有引号的包裹,被识别成了 C:\Program 命令

持续整理中……

本文会经常更新,请阅读原文: https://walterlv.com/post/error-code-in-vs-build-events.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 吕毅 (包含链接: https://walterlv.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系 (walter.lv@qq.com)

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-03-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 命令“"xxx.exe" xxx”已退出,代码为 3/123/9009。VS 的这些编译错误代码代表了什么意思?
    • 错误代码: 3
      • 错误代码: 123
        • 错误代码: 9009
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档