为什么xcopy在Visual Studio后期构建步骤中使用代码9009退出?

Dav*_*man 38 c# xcopy visual-studio

我收到以下错误,我不明白.有什么建议?

错误1命令 "XCOPY "d:\用户\ johndoe的\文档\ Visual Studio 2008的\项目\ MyProject的\ MyProject.Modules.Ribbon\BIN \调试\ MyProject.Modules.Ribbon.dll"" d:\用户\ johndoe的\ Documents\Visual Studio 2008\Projects\MyProject\MyProject\bin\Debug\Modules \"/ Y"退出代码9009. MyProject.Modules.Ribbon

Job*_*col 32

我在TeamCity构建服务器上输入了此错误.检查构建日志后我终于解决了它,发现:

"'xcopy'不被视为内部或外部命令."

然后我将我的陈述改为:

C:\ Windows\System32\xcopy "$(ProjectDir)config\Web.config.$(ConfigurationName)""$(ProjectDir)Web.config"/ Y/R

  • xcopy昨天对我有用,今天我不得不使用%windir%\ system32\xcopy (7认同)
  • 当我尝试配置Java时,可能修改了PATH变量Control Panel\System和Security\System - > Environment变量.我猜这就是为什么不理解xcopy命令的原因.现在它有效!谢谢. (3认同)

小智 31

重新启动Visual Studio.为我工作

  • 这个简单的解决方案对我有用! (4认同)

Dav*_*man 21

找到我的答案:该命令在源字符串和目标字符串之间有换行符.因此,Visual Sudio将其视为两个命令.消除换行解决了这个问题.

  • 名称"Program Files"与"ProgramFiles"中的空格也会导致此问题 (2认同)

Rob*_*inG 10

如果您的系统PATH环境变量设置不正确,则会发生此错误.路径应该包含(至少)

%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;
Run Code Online (Sandbox Code Playgroud)

在现代版本的Windows上(请参阅https://superuser.com/questions/124239/what-is-the-default-path-environment-variable-setting-on-fresh-install-of-window).我刚刚发现我的系统PATH已被设置为

C:\Program Files (x86)\Bad Vendor\Buggy Program;
Run Code Online (Sandbox Code Playgroud)

由msi安装程序显然有问题.

如果您不知道如何通过"系统属性"对话框编辑PATH,请查看以下链接:http://support.microsoft.com/kb/310519 - 它在Windows 7和8中与在XP中基本相同.

最后,值得注意的是,如果在运行时更新PATH,很多程序都不会注意到,因此需要关闭并重新启动Visual Studio或命令提示符窗口等程序才能使修复的路径生效.