2012-01-12 12 views
5

我想創建一個帶有msbuild的預處理文件,用於診斷原因。該文檔指出,我只需要使用/ pp:Filename開關調用msbuild。所以我做:帶/ pp(/ preprocess)的MSbuild 4不會寫預處理文件

msbuild project.sln /t:Build /p:Configuration=Release /pp:out.txt 

它還創建了一個「out.txt」文件,這樣的說法顯然有一定的影響,但該文件是空的(大小爲0,沒有內容)。那麼,預處理過的項目文件寫入不正確的原因是什麼?該項目文件雖然建立良好。

回答

7

順便說一句,MSBuild能夠從任何解決方案生成一個項目文件。只要設定下面的環境變量

Set MSBuildEmitSolution=1 

和執行

msbuild.exe MySolution.sln. 

它會生成一個MySolution.sln.metaproj,它能夠攜帶預處理參數

3

問題是,您在解決方案上運行此預處理參數只適用於MSBuild中的項目。

Thorsten

+0

啊,這解釋了很多:)謝謝。 – 2012-01-12 14:13:17