简体   繁体   中英

Why does xcopy exit with code 9009 in Visual Studio post-build step?

I am getting the following error, which I don't understand. Any suggestions?

Error 1 The command "xcopy "D:\\Users\\johndoe\\Documents\\Visual Studio 2008\\Projects\\MyProject\\MyProject.Modules.Ribbon\\bin\\Debug\\MyProject.Modules.Ribbon.dll" "D:\\Users\\johndoe\\Documents\\Visual Studio 2008\\Projects\\MyProject\\MyProject\\bin\\Debug\\Modules\\" /Y" exited with code 9009. MyProject.Modules.Ribbon

I encounted this error on the TeamCity build server. I finally resolved it after checking the build log and found:

"'xcopy' is not recognized as an internal or external command."

I then changed my statement to:

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

Restart Visual Studio. Worked for me

Found my answer: The command had a line break between the source and destination strings. So, Visual Sudio was treating it as two commands. Eliminating the line break solved the problem.

This error can occur if your system PATH environment variable has been set incorrectly. The path should contain (at the very least)

%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;

on modern versions of Windows (see https://superuser.com/questions/124239/what-is-the-default-path-environment-variable-setting-on-fresh-install-of-window ). I have just found my system PATH had been set to

C:\Program Files (x86)\Bad Vendor\Buggy Program;

by an msi installer that obviously has issues.

If you don't know how to edit the PATH via the System Properties dialog, check out this link : http://support.microsoft.com/kb/310519 - it's basically the same in Windows 7 & 8 as it is in XP.

Finally, it's worth noting that a lot of programs don't notice if you update the PATH while they are running, so closing down and re-opeing programs like Visual Studio or command prompt windows will be required for the repaired path to take effect.

Your xcopy command failed for some reason.

I would guess that either the DLL file doesn't exist (eg, the build failed) or the target path doesn't exist.

Run the same command line in a command prompt and see what error it prints.

Even though its a old post, I found fix which may help some one.

What not helped me

Restarting visual studio.
Restarting computer
tried few steps as above and few more blogs

I am using Visual Studio 2013.

What helped me.

Check the Environmental Variables check the PATH, does it has all or nothing or only a part.

since I was having backup of System PATH, I just copy-pasted the variables Under

System Variables -> Path.

At last, I gave rebuild to the project voila! it worked for me.

Thanks for your help.

I gave complete path of xCopy and it worked for me.

%windir%\system32\xcopy

%windir%\system32\xCopy "$(ProjectDir)app\ExtjsWS\build\*.*" "$(publishUrl)\app\ExtjsWS\build" /y /i/e</PostBuildEvent>

Mostly related to path C\\Program files...\\some.exe. It should be "C\\Program files...\\some.exe"

在我的情况下:我修复它这样做:将值%SystemRoot%\\ system32添加到环境变量的Path变量,并重新启动我的计算机,重建解决方案,它很好。

windows defender was blocking access for me, because I get so many of these silly push notifications I was just ignoring it during the build process. Click the notification and allow access for xcopy. Problem solved

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM