我不时在这里构建我的解决方案(其中包含7个项目)我在Visual Studio 2010 Premium ed中得到了可怕的'命令副本退出代码4'错误.
这是因为后期构建事件无法通过.
这是暂时解决问题的方法
以下是构建后事件的样子:
xcopy "$(SolutionDir)Solution Items\References\*.dll" "$(TargetDir)" /Y
Run Code Online (Sandbox Code Playgroud)
当您使用代码[插入值]错误退出命令副本时,通常会出现以下情况:
然而 - 显然有时我构建解决方案时,没有问题.
仅供参考,两周前我卸载了ReSharper 5.1.1,Visual Studio从那时起就给了我一些错误(其中无法调试).我重新安装了Visual Studio,从那以后它运行得更好,但仍然遇到了这个问题.它可能与某些ReSharper的某些东西有关吗?
你有同样的问题并解决了吗?或者你有任何可能的解决方案吗?
干杯.
小智 194
虽然/C可能会忽略错误,但它可能不是真正的解决方案,因为可能存在必须复制的文件才能使构建成功.
最常见的问题是预定义命令标记(例如$TargetDir)周围缺少引号.当一个人在代码或TFS中创建各种分支和路径时,很有可能发生这种情况.
有时如果文件是只读的,它也会引起问题.添加/R选项以允许复制只读文件.您可以在以下位置找到可用选项列表:
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/xcopy.mspx?mfr=true
另一个可能的问题是无法访问基础文件夹.如果是这样,尝试执行"start xcopy"而不是"xcopy".这将打开另一个命令窗口,但使用admin priveleges.
Pre*_*gha 74
我总是发现这是一个文件锁定问题.代码4是无法访问文件.我找到的一个部分解决方案是使用/ C选项进行xcopy(在出错时继续).不是真正的解决方案,但主要是它已经阻止了我的构建失败.
另一种仅适用于32位的解决方案是使用解锁工具在复制之前释放文件上的窗口句柄.
编辑:我刚刚意识到它也可以在64位下工作.
Val*_*roM 19
我越过了同样的错误,但这不是因为文件被锁定,而是文件丢失了.
VS尝试复制不存在的文件的原因是由于Post-build事件命令.
在我清除之后,问题解决了.
更新:
正如@rhughes评论的那样:
真正的问题是如何让命令在这里工作,而不是删除它.
他是绝对正确的.

我也遇到过这个问题.请在错误窗口中仔细检查结果.
在我的情况下,拖尾\正在崩溃xcopy(因为我正在使用$(TargetDir)).就我而言$(SolutionDir)..\bin.如果您正在使用任何其他输出,则需要进行调整.
另请注意start xcopy,如果编译后错误消失,则无法解决问题.它可能刚刚被命令行压制,实际上没有文件被复制过!
您可以在命令shell中手动执行xcopy命令.在那里执行它们时,您将获得更多详细信息,指向正确的方向.
如果post build事件包含用于将构建输出复制到某个目录的copy/xcopy命令(通常是最常见的构建后操作),如果源或目标目标的完整目录路径包含包含的文件夹名称,则可能会出现此问题空间.删除目录名称的空间,然后尝试.
小智 5
正如许多网站所提到的,这有很多原因.对我来说,这是由于源和目的地的长度(路径长度).我在命令提示符下尝试了xcopy,我无法输入完整的源和路径(在某些字符之后它不允许您键入).然后我减少了路径长度并且能够运行.希望这可以帮助.
| 归档时间: |
|
| 查看次数: |
151298 次 |
| 最近记录: |