【发布时间】:2019-08-04 01:36:40
【问题描述】:
在我的演示项目的构建事件中,(一个类库项目),将构建结果.dll复制到特定文件夹,(如果它不存在则自动创建),我在Post-build event 命令行部分添加了以下命令行:
xcopy /Y "$(TargetDir)$(TargetFileName)" "$(SolutionDir)DemoApp\bin\$(ConfigurationName)\Packages\"
效果很好。
然后我尝试用调用位于 $(SolutionDir) 中的名为 CopyPackage.bat 的新批处理文件来替换该命令行。批处理文件的内容就是上面的命令行:
call $(SolutionDir)CopyPackage.bat
然后我重建项目并得到以下错误:
严重性代码描述项目文件行抑制状态 错误 The command "call C:\TestProjects\DemoApp\CopyPackage.bat" exited with code 4. DemoApp
我错过了什么吗?
解决方法在得到大家的一些提示后:
在构建后事件命令行中我输入:(参见参数)
$(SolutionDir)CopyPackage.bat "$(TargetDir)$(TargetFileName)" "$(SolutionDir)DemoApp\bin\$(ConfigurationName)\Packages\"
在批处理文件 CopyPackage.bat 中:
set targetfile=%~1
set targetdir=%~2
echo %targetfile%
echo %targetdir%
xcopy /Y %targetfile% %targetdir%
【问题讨论】:
标签: batch-file msbuild visual-studio-2017 post-build-event