【发布时间】:2012-12-10 11:41:39
【问题描述】:
我想让 VS 将它在构建过程之后创建的 .lib 文件复制到特定文件夹。 于是我去了项目配置,构建后事件,并输入了以下命令:
if exist $(TargetPath)
xcopy "$(TargetPath)" "C:\Users\Incubbus\Documents\Visual Studio 2010\My Libraries\z.lib" /Y
但在我点击“构建”后,复制过程并没有失败,我收到以下错误:
错误 MSB3073:命令“如果存在 C:\Users\Incubbus\Documents\Visual Studio 2010\My 库\MyNetWorkProject\Debug\IncNetworkLibD.lib xcopy "C:\Users\Incubbus\Documents\Visual Studio 2010\My 库\MyNetWorkProject\Debug\IncNetworkLibD.lib" "C:\Users\Incubbus\Documents\Visual Studio 2010\My Libraries\z.lib" /Y
:VCEnd" 以代码 2 退出。
我也想知道错误消息的命令字符串中的:VCEnd
任何帮助和提示都会被愉快地使用:)...
部分解决方案:
EDIT:当 xcopy 询问这是文件还是目录时,看起来 重命名 部分(Inc.lib 到 z.lib)会造成麻烦。 .当我只是将最初命名的文件复制到目录而不是复制重命名时,它可以工作
【问题讨论】:
-
将项目文件中的 PostBuildEvent 复制/粘贴到您的问题中。不要编辑它,让它看起来完全一样。
-
看起来重命名部分(Inc.lib 到 z.lib)很麻烦,当 xcopy 询问这是一个文件还是一个目录时......当我只复制 lib-file 时这有效到一个目录而不重命名它...
-
stackoverflow.com/a/4283533/532647 一种可能的解决方法。通过
echo f | xcopy ...,您只需对 xcopy 说“文件”即可。 -
工作,谢谢...如果您将其发布为答案,我可以将问题标记为已回答...
标签: visual-studio msbuild visual-studio-2012 xcopy post-build-event