MSBuild错误:该命令以255代码退出。

4

我希望在编译之前执行一些操作,因此我在预建事件中添加了命令行。

for /f "tokens=*" %a in ('dir /b /s /a-d "$(ProjectDir)lib"') do @copy "%a" "$(TargetDir)" /y

这个命令的目的是将项目目录下的所有文件从lib复制到调试目标。
但在构建项目时,出现了错误MSB3073:命令“for /f“tokens = *”%a in ('dir /b /s /a-d“$(ProjectDir)lib”') do @copy“%a”“$(TargetDir)”/y :VCEnd”退出代码为255。 但是在CMD中执行该命令没有问题。
有人知道如何解决这个问题吗? IDE是VS2013,C ++项目。
在Visual Studio的批处理文件中,for命令可能无法正常工作吗?
1个回答

9

在批处理脚本中运行命令时有所不同。您需要将%符号加倍。 尝试这样做:

for /f "tokens=*" %%a in ('dir /b /s /a-d "$(ProjectDir)lib"') do @copy "%%a" "$(TargetDir)" /y

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接