命令“”xxx.exe” xxx”已退出,代码为 n。

我们在 cmd 中输入常见命令的时候,如果命令输入错误或使用错误,cmd 中会提示错误原因,帮助我们定位并解决问题。然而如果相同的命令放到了 Visual Studio 的生成事件中,我们就只能得到 Visual Studio 返回的错误代码了。为了能够快速地根据错误代码大致猜测错误原因,本文整理了一部分错误代码的通用原因。我会在遇到新的错误后,更新这篇博客(和它的原文:https://walterlv.github.io/post/error-code-in-vs-build-events.html)。


命令的格式为:

命令 参数1 参数2 参数3

 

错误代码: 3

系统找不到指定的路径。

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

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

错误代码: 123

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

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

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

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

错误代码: 9009

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

  • 命令写错了,而不是可执行文件写错了

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

命令“"xxx.exe" xxx”已退出,代码为 n。这些错误是什么意思?(3 / 123 / 9009)的更多相关文章

  1. resgen.exe 已退出 代码为 1073741701的错误的解决办法

    以管理员的身份打开命令提示窗口:(开始-运行-cmd),更改目录至"CD C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\”下 ...

  2. Lc.exe已退出,代码为-1

    编译项目,出现提示"Lc.exe已退出,代码为-1" .   解决办法: 意思就是把licenses.licx这个文件里的内容删除,但是文件还在(此时是个空文件),发生这个问题的原 ...

  3. 解决tsc.exe 已退出 代码为 1

    最近从ABP上面下载一个项目,然后用VS2015编译后报错,在Web项目下ABP---Framework---scripts下面多了一个abp.d.ts,报了一大堆错误 上网一查,d.ts是TypeS ...

  4. Lc.exe已退出 代码为-1问题解决方法

    对于用vs作为开发工具的同学来说,可能常常会碰到“Lc.exe已退出 代码为-1”的问题,造成这个结果的一般是因为加入了第三方的插件程序造成的,今天一一讲解如何解决. 工具/原料 vs各版本开发工具 ...

  5. VS 编译总是出现错误: "LC.EXE 已退出,代码为-1"

    最近在开发CS的一个项目时,编译总是出现错误: "LC.EXE 已退出,代码为-1" 解决方法一:用记事本打开*.licx,里面写的全是第三方插件的指定DLL,删除错误信息,保存, ...

  6. xamarin for android 生成时“java.exe已退出 代码为1”

    Xamarin Studio中创建了一个Android Application 运行时出现错误:C:\Program Files\MSBuild\Xamarin\Android\Xamarin.And ...

  7. vs2015 cmd.exe已退出 代码为1

    https://blog.csdn.net/changbin91/article/details/42874377?utm_source=blogxgwz0 https://blog.csdn.net ...

  8. VS中生成时“sgen.exe”已退出,代码为 1解决办法

    visual studio 2010 选定web项目,右键选择“属性”—“生成”,将“生成序列化程序集”设成“关闭”. 原理分析: sgen是XML序列化程序生成器工具. 可能是这个项目里面有xml序 ...

  9. lc.exe已退出代码为1

    1.把项目文件夹下Properties文件夹下的licenses.licx文件删除,重新编译即可: 2.文本方式打开*.csproj文件,在文件中查找licenses.licx字样,删除对应节点. 之 ...

随机推荐

  1. linux环境变量 export命令详解

    由host $ export DVSDK="${HOME}/ti-dvsdk_dm368-evm_xx_xx_xx_xx"引发的问题 1.${HOME}:首先, HOME 是个变量 ...

  2. 创建node.js,blog

    terminal npm init //创建项目 npm install --save express //安装 express 模块 npm install --save body-parser / ...

  3. CGI-FASTCGI-PHPFPM

    随意记录,摘自知乎 原文链接:https://segmentfault.com/q/1010000000256516 首先,CGI是干嘛的?CGI是为了保证web server传递过来的数据是标准格式 ...

  4. sqlserver 遍历表

    use Research go ); ) NOT NULL, [mrs] date); DECLARE Table_Cursor CURSOR FOR--包含有列‘sigdate’的表 select ...

  5. dapper-dot-net/Dapper NET40/SqlMapper.cs

    /* License: http://www.apache.org/licenses/LICENSE-2.0 Home page: http://code.google.com/p/dapper-do ...

  6. brew || yarn 软件包管理工具

    1.brew || yarn 软件包管理工具

  7. 闲话__stdcall, __cdecl, __fastcall出现的历史背景以及各自解决的问题

    可以认为最先由微软搞出来了__stdcall, 其实就是和WINAPI的声明是一样的,入栈顺序是从右到左,函数返回时,会进行出栈操作. PASCAL语言是非常古老的编程语言,在C语言之前,因此在当时的 ...

  8. IRC BOT原来是利用IRC下发C&C命令——在xx云环境遇到了,恶意软件开的是6666端口

    Backdoor/IRC.RpcBot 本词条缺少名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! Backdoor/IRC.RpcBot是一些批处理文件.脚本文件和执行文件的集合,也是 ...

  9. bzoj1997

    题解: 在圆上面的点能不能不交叉 和那一题差不多 http://www.cnblogs.com/xuanyiming/p/8110597.html 代码: #include<bits/stdc+ ...

  10. crypt函数加密验证

    body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...