C#项目的PostEvent里经常会用到xcopy命令,复制目录时容易出错,如下:
-
xcopy sourceDir targetDir,其中的2个目录最后不能有反斜杠"",而目录类的宏命令一般都会在最后输出反斜杠"",比如$(TargetDir)。否则会报errorCode = 4。变通的解决方法是把$(TargetDir)替换为$(Project)bin\Debug
-
生成的路径里有的时候会带空格,因此保险的方式是加双引号"",定成如下格式:xcopy "sourceDir" "targetDir"
-
还有一个坑是xcopy的参数,如果targetDir不存在,要添加/I:如果目标不存在,且要复制多个文件,则假定目标必须是目录。虽然/I的解释词不达意,但作用就是创建新目录。其他常规的/E:复制目录和子目录、/Y:取消提示确认都好理解。添加 /E /Y /I 三个参数即可。
-
最后给一个项目中用的实例:xcopy "$(ProjectDir)bin\Debug" "$(ProjectDir)..\Main\bin\Debug" /E /Y /I
作者:AlexanderYao
出处:http://alexanderyao.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。