我有一个控制台程序输出它的exe& dll到指定的目录。
作为post build事件,我试图将该目录中的所有内容复制到另一个目录。
我的xcopy命令在命令提示符下工作但在VS2010中失败了吗?怎么会这样?
我正在测试它,方法是转到项目文件夹并在命令提示符下执行以下命令。 (这是VS2010的输出)
在我的后期制作活动中:
xcopy "$(OutDir)*.*" "$(TargetDir)..\..\Foo\Bar\" /s /y /i
从命令提示符我执行以下工作。
xcopy "..\..\..\..\MyDir\baz\zip\*.*" "c:\1\2\3\MyDir\baz\zip\..\..\Foo\Bar\" /s /y /i
抱歉目录名称。
最终结果应该是两个目录中包含相同文件的目录:
c:\1\2\3\MyDir\baz\zip
c:\1\2\3\MyDir\foo\bar
目标路径相对于输出目录。
当它作为构建的一部分执行时,它会提供退出代码4
发生初始化错误。内存或磁盘不足 空格,或者您输入的驱动器名称无效或语法无效 命令行。
我哪里错了?
答案 0 :(得分:2)
知道了,
我将post post事件中的xcopy命令更改为:
xcopy "$(TargetDir)*.*" "$(TargetDir)..\..\Foo\Bar\" /s /y /i
执行结果为:
xcopy "c:\1\2\3\MyDir\baz\zip\*.*" "c:\1\2\3\MyDir\baz\zip\..\..\Foo\Bar\" /s /y /i
哪个VS2010更受欢迎,我猜你不能使用没有基本路径的相对路径。
答案 1 :(得分:0)
为什么不调用批处理文件,该文件将为所需的文件源运行xcopy到目的地?
call "$(SolutionDir)scripts\copyifnewer.bat"
如果newer.bat看起来像这样的副本:
IF NOT EXIST <destination> md <destination>
XCOPY /Y <file> <destination>