2010年6月18日 星期五

MSBuild 與 DevEnv 的建置結果不相等

使用 TFS Build 了一陣子,發現了 MSBuild 的結果未必與 Visual Studio 2005 建置的結果不同。

故事是這樣的:我使用了下列的指令 rebuild 了一個 solution。

msbuild mySolution.sln /t:rebuild

將該solution 下的某個 webform 專案結果拿到 CAT.NET 下掃描,結果會出現「並未將物件參考設定為物件的執行個體」的錯誤訊息。

image

怎麼會呢?看起來是 CAT.NET 的 bug。

追了好久,改用Visual Studio 2005 內建的指令 devenv 來建置

DevEnv MySolution.sln /rebuild "Release"

建置結果竟然可以了!

只能說 Visual Studio 2005 與 msbuild 的結果可能不一樣。有沒有人知道差別到底在哪裡呢?

在VS2008, VS2010 是否也是相同的狀況呢? 還沒有測試呢!

沒有留言:

Share with Facebook