簡體   English   中英

“@echo on”用於Visual Studio 2012中的后期構建事件批處理文件

[英]“@echo on” for a post build event batch file in Visual Studio 2012

我非常希望看到實際的構建事件腳本以進行調試。 我已經嘗試使用@echo引導腳本,根據文檔應該可以工作,但是我還沒有在構建輸出中看到除exe或顯式“echo some text”輸出之外的任何內容。

這是我的構建事件:

echo on
cd $(ProjectDir)_dev
PostBuildEvents.bat $(ConfigurationName) $(TargetName)

我確實在輸出中看到了這個文本,但是在.bat文件中沒有看到任何內容。 我還嘗試在批處理文件的頂部添加echo,但這也不起作用。

雖然答案會非常晚,但對於來到這里的其他人來說可能會有用:我找到的唯一方法也包含在文檔頁面中,它是以下內容:

修改項目設置以收集構建日志中的默認信息量以上。 在“ 工具”菜單上,單擊“ 選項” 在“ 選項”對話框中,單擊“ 項目和解決方案”節點,然后單擊“ 生成並運行”節點。 然后,在MSBuild項目構建日志文件詳細信息框中,單擊“ 詳細信息”

在此輸入圖像描述

我正在努力解決同樣的問題。 我能夠克服這一點的唯一方法是回顯每一行,但這需要輸入兩次,一次用於回聲,一次用於執行。 所以我決定使用帶有echo的變量。

ECHO ON
ECHO C:\myFolder\bin\heat.exe
C:\myFolder\bin\heat.exe
if errorlevel 1 exit 1

變量的更好方法

ECHO ON
SET vCmdl="C:\myFolder\bin\heat.exe" 
ECHO %vCmdl%
%vCmdl%
if errorlevel 1 exit 1

通過這種方式,我可以在“輸出”窗口中看到bat文件的每一行以及它們產生的任何消息,如果發生錯誤,則VS收到“exit 1”並構建FAILS。

一種選擇是讓Post-Build事件使用cmd /c來啟動批處理腳本, 默認情況下啟用echo

例如:

cmd /c PostBuildStep.cmd "$(MSBuildProperty1)" "$(MSBuildProperty2)"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM