爲Visual Studio添加默認INCLUDE包含路徑一勞永逸的方法(更新)

你是否曾經也有過這樣的問題:

用VS的時候,有時會用到一些非自帶的庫,例如WTL、Boost、DX等,每次需要用到時都要在項目屬性裏添加相應的include目錄,久而久之覺得有點麻煩。是否有解決辦法呢?

於是我便在網上找相關資料,在StackOverflow網站上找到一篇相關的文章(原文鏈接),文章裏提到的一個辦法是修改 

C:\Users\<user>\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp.Win32.user.props 這個文件,在這個文件裏添加需要include的目錄,之前我一直是用這個方法,也沒啥問題。

當我安裝了VS2012之後,問題變出現了。在VS2012上新建一個MFC的工程,什麼也沒動,居然編譯不通過,提示找不到某些文件,我便聯想到了是不是之前修改了影響到了,於是我果斷把修改的那個文件恢復成默認的內容,再試,結果就沒問題了。。。可是這樣就得每次都手動添加WTL的目錄了。。我便開始翻VS的一些配置文件。

解決方案一:

修改 "VS安裝目錄中的\VC\VCWizards\default.vcxproj" 這個文件,(這其實就是個xml文件)

如我的目錄是"D:\Program Files\Microsoft Visual Studio 11.0\VC\VCWizards\default.vcxproj"

如果我要添加的目錄是"D:\Program Files\Microsoft Visual Studio 11.0\VC\WTL\include";

用文本編輯器打開這個文件,定位到文件末尾,在</Project>之前插入如下內容

  <PropertyGroup>
    <IncludePath>$(VCInstallDir)\WTL\include;$(IncludePath)</IncludePath>
  </PropertyGroup>

$(VCInstallDir)\WTL\include;就是需要添加的目錄了。$(VCInstallDir)是VS裏的環境變量(在我的電腦上就是"D:\Program Files\Microsoft Visual Studio 11.0\VC"),表示VC的安裝目錄。$(IncludePath)是表示原有的路徑。實際上最終得到的路徑如圖裏四個

如果需要添加lib文件的路徑的話。格式就是<LibraryPath></LibraryPath>

添加完後保存即可,新建一個項目後,在項目屬性裏可以看到目錄已經加進去了。大功告成,VS2010也是用同樣的方法,只不過目錄不同了。

解決方案二:

這個方法是結合了開頭提到的StackOverflow網站上的修改方法。

依然是修改 "VS安裝目錄中的\VC\VCWizards\default.vcxproj" 這個文件,只不過這裏修改的地方不同,用文本編輯器打開該文件,查找"$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"這段內容,

其實這裏就是指向了我電腦上的那個文件C:\Users\HwangBae\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp.Win32.user.props;這裏我就想到了,爲VS2010和VS2012指定不同的文件,

將"$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"全部替換成"$(UserRootDir)\VC11\Microsoft.Cpp.$(Platform).user.props"。

然後在C:\Users\HwangBae\AppData\Local\Microsoft\MSBuild\v4.0這個目錄下創建了兩個文件夾,分別命名爲VC10和VC11,然後將Microsoft.Cpp.Win32.user.props複製到這兩個文件夾,然後除了這兩個文件夾外的文件均可刪除,其他的文件VS會在那兩個文件夾裏自動重新創建的;

然後編輯Microsoft.Cpp.Win32.user.props這個文件,在<Project>節點下按照方法一的步驟插入同樣的代碼。在VS2010的目錄下也做同樣的替換。到此就完事了。測試無任何問題。

 

總結一下這兩種方法的區別,方法一修改後,只對新建的項目有效,在沒修改之前創建的項目是無效的,而方法對於之前創建的項目也有效。哪種方法比較適合大家自己取捨。

轉載請標明出處,原文地址:
http://www.cnblogs.com/hwangbae/archive/2012/06/24/2560463.html
如果覺得本文對您有幫助,請支持一下,您的支持是我寫作最大的動力,謝謝。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章