[英]Post event build exit with code 1 error in Visual studio 2013
這是腳本:
copy /y "$(SolutionDir)Libs\Detect.dll" "$(SolutionDir)$(ConfigurationName)"
call editbin.exe /LARGEADDRESSAWARE SER.EXE > post.txt
call dumpbin.exe /HEADERS SER.EXE > post1.txt
錯誤是
錯誤306命令“復制/ y“ C:\\ dev \\ blah \\ Libs \\ Detect.dll”“ C:\\ dev \\ blah \\ Debug”調用editbin.exe / LARGEADDRESSAWARE SER.EXE> post.txt調用dumpbin.exe / HEADERS SER.EXE> post1.txt“退出,代碼為1。
在Visual Studio 2013中發布具有代碼1錯誤的事件生成退出
僅需要確認一件事:該SER.EXE
僅在發布模式下執行,還是該SER.EXE
在發布文件夾中存在,應該在調試和發布模式下執行?
如果僅在發行版中執行此SER.EXE
,則應考慮Lex的建議。 構建前和構建后事件作為批處理腳本運行。 您可以在$(ConfigurationName)上執行條件語句。 例如:
copy /y "$(SolutionDir)Libs\Detect.dll" "$(SolutionDir)$(ConfigurationName)"
if $(ConfigurationName) == Release call editbin.exe /LARGEADDRESSAWARE "SER.EXE"> post.txt
if $(ConfigurationName) == Release call dumpbin.exe /HEADERS SER.EXE > post1.txt
如果此SER.EXE
存在於發行文件夾中,並且應在調試和發行模式下執行,則只需在命令中指定發行文件夾:
call editbin.exe /LARGEADDRESSAWARE "Release\SER.EXE"> post.txt
call dumpbin.exe /HEADERS "Release\SER.EXE"> post1.txt
顯然,您還需要確保可以執行SER.EXE
,可以在控制台應用程序項目中使用以下命令進行測試:
call editbin.exe /LARGEADDRESSAWARE "$(TargetPath)"> post.txt
注意:如果要在調試和發布模式下都使用此生成后事件,則應為所有配置添加命令行,否則此命令將僅在一種模式下起作用(僅提醒):
希望能有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.