The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

介紹好用工具:MSBuild Shell Extension

我有時只想單純建置(Build)一個 .NET 專案時,一想到要開啟又肥又重的 Visual Studio 就覺得有點懶懶的,正所謂:「懶惰,是程式開發人員的美德!」。如果你跟我一樣懶,可以考慮安裝 MSBuild Shell Extension 工具。

MSBuild Shell Extension 是一套 Windows Explorer 的 Shell Extension,也就是這個功能會與你的「檔案總管」緊密結合在一起,執行時就只要在方案檔或專案檔的檔案上按右鍵就會出現 Build / Clean / Rebuild 的項目,如下圖示:

MSBuild Shell Extension :: 只要在方案檔或專案檔的檔案上按右鍵就會出現 Build / Clean / Rebuild 的項目

但由於 MSBuild Shell Extension 是在 Visual Studio 2005 時期出的工具,若要利用 MSBuild Shell Extension 建置 Visual Studio 2008 的方案檔或 .NET Framework 3.5 專案的話,就必須要利用內建的 Configurator 進行調整。

MSBuildShellExtension -> Configurator

開啟 Configurator 之後,點選 Extensions 頁籤,並且對每一個 Extensions 各自修改 .NET version 到 v3.5,最後再按下 Save 按鈕即可將設定值儲存到機碼中。

MSBuildShellExtension Configurator

不過,我個人在設定好之後,透過檔案總管執行時會出現以下錯誤:

'"C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat"' 不是內部或外部命令、可執行的程式或批次檔。

跟作者溝通了一段時間後,才發現原來是因為我當初的 Visual Studio 2008 是從 Visual Studio 2005 升級上來,機碼中的 VisualStudio Launcher 設定值還是指定到 Visual Studio 2005 的路徑,且我的 Visual Studio 2005 已經移除了,才會導致這個錯誤,以下是修正的方法:

  1. 先開啟 regedit 並進入 HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln 機碼,如下圖是需要修改的機碼:
    開啟 regedit 並進入 HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln 機碼

  2. 然後將這幾個機碼的預設值中錯誤的路徑修正,原本的路徑可能是 C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat 是錯的,你要修改成 D:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat 才對!

設定完之後就可以正常運作了。

 相關連結