在我的项目中,我试图通过Visual Studio中的后期构建事件命令将文件目录复制到另一个目录中。
我想出了这个命令行代码以在项目xcopy /Y /I /E "$(WorkingDirectory)/abra/kadabra" "$(LocalDebuggerWorkingDirectory)/kadabra"
中使用
我想从 cmake 和我所理解的自动生成此命令 add_custom_command
方法是我应该使用的...
但是当我尝试时
add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND xcopy /Y /I /E "$(WorkingDirectory)/abra/kadabra" "$(LocalDebuggerWorkingDirectory)/kadabra")
我把它作为我在视觉工作室中的命令行选项
setlocal
xcopy /Y /I /E $(WorkingDirectory)/abra/kadabra $(LocalDebuggerWorkingDirectory)/kadabra
if %errorlevel% neq 0 goto :cmEnd
:cmEnd
endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
:cmErrorLevel
exit /b %1
:cmDone
if %errorlevel% neq 0 goto :VCEnd
我做错了什么?
我最终找到了一个答案,这基本上是转义引号。我把这个"$(WorkingDirectory)/abra/kadabra" "$(LocalDebuggerWorkingDirectory)/kadabra")
变成了"$(WorkingDirectory)/abra/kadabra" "$(LocalDebuggerWorkingDirectory)/kadabra")
但是,我仍然得到了所有额外的本地设置和如果%错误级别%的东西,这不是我想要的。但是,它不会影响我的项目。