提問之前請先閱讀網友常問的問題







主選單 -> Tools -> Options -> Projects and Solutions -> VC++ Directories,被告知此處不能編輯 VC++ Directories。不像 Visual Studio 2008 可以直接設定。
Visual_Studio_2010_VC++_Directories

我發現 VC++ Directories 的 path 預設值都儲存在一個檔案中,只要修改這個檔案將自己的 path 寫入,讓自己的 path 成為預設值的一部分。如此一來,開啟 projects 之後,你手動加入的 path 也會像預設 path 那樣被載入。

這個神祕的檔案共兩個,對於編譯 x86 和 x64 的程式各有一個對應的檔案。
x86:Microsoft.Cpp.Win32.v100.props

C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\PlatformToolsets\v100\


x64:Microsoft.Cpp.x64.v100.props

C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Platforms\x64\PlatformToolsets\v100\


以 x86 為例。用記事本開啟 Microsoft.Cpp.Win32.v100.props,搜尋 </PropertyGroup>(只能找到一個),找到之後向上看。這些 path 就是 VC++ Directories 中預設的 path。

    <FrameworkVersion Condition="'$(UseEnv)' != 'true'">v4.0</FrameworkVersion>
    <Framework35Version Condition="'$(UseEnv)' != 'true'">v3.5</Framework35Version>

    <ExecutablePath Condition="'$(ExecutablePath)' == ''">$(VCInstallDir)bin;
    <IncludePath Condition="'$(IncludePath)' == ''">$(VCInstallDir)include;
    <ReferencePath Condition="'$(ReferencePath)' == ''">$(VCInstallDir)atlmfc\lib;
    <LibraryPath Condition="'$(LibraryPath)' == ''">$(VCInstallDir)lib;
    <SourcePath Condition="'$(SourcePath)' == ''">$(VCInstallDir)atlmfc\src\mfc;
    <ExcludePath Condition="'$(ExcludePath)' == ''">$(VCInstallDir)include;
    <NativeExecutablePath Condition="'$(NativeExecutablePath)' == ''">$(ExecutablePath)
  </PropertyGroup>


將你原本想要在 VC++ Directories 中加入的 path 加進去,優先使用左邊的 path,path 之間以分號隔開。範例,我只用過 IncludePath 和 LibraryPath,現在給它們加入偶自己的 path。

    <FrameworkVersion Condition="'$(UseEnv)' != 'true'">v4.0</FrameworkVersion>
    <Framework35Version Condition="'$(UseEnv)' != 'true'">v3.5</Framework35Version>

    <ExecutablePath Condition="'$(ExecutablePath)' == ''">$(VCInstallDir)bin;
    <IncludePath Condition="'$(IncludePath)' == ''">PATH1;PATH2;$(VCInstallDir)include;
    <ReferencePath Condition="'$(ReferencePath)' == ''">$(VCInstallDir)atlmfc\lib;
    <LibraryPath Condition="'$(LibraryPath)' == ''">PATH1;PATH2;$(VCInstallDir)lib;
    <SourcePath Condition="'$(SourcePath)' == ''">$(VCInstallDir)atlmfc\src\mfc;
    <ExcludePath Condition="'$(ExcludePath)' == ''">$(VCInstallDir)include;
    <NativeExecutablePath Condition="'$(NativeExecutablePath)' == ''">$(ExecutablePath)
  </PropertyGroup>
創作者介紹

呆丸北拜已搬家至 Blogger

呆丸北拜 發表在 痞客邦 PIXNET 留言(2) 人氣()


留言列表 (2)

發表留言
  • walker
  • 2010好像變成每個專案要設定自己的Directories
    也就是開新專案後可以點專案的propertys作設定
  • 不清楚,我沒試過別的方法設定自己的 Directories。

    呆丸北拜 於 2011/07/27 12:06 回覆

  • 路人
  • 把這篇挖出來一下, 最近才搞懂如何從UI修改user.props:
    VC2010的設定檔分為Toolset Properties及User Properties (置於 %USERPROFILE%\AppData\Local\Microsoft\MSBuild\v4.0)。板大您說的是前者, 但因為它算是global settings, 微軟似乎不建議修改這個檔案。User Properties可繼承或覆寫Toolset Properties, 其內容可從UI修改, 方法是View>Property Manager, 展開各project後, 右鍵開啟Microsoft.Cpp.XXX.user這些項目的Property Pages, 就能像VC9一樣修改其內容了。
  • 不過我還是習慣於改 global settings,這樣就不用各個 project 每次都要手動設定一遍。

    呆丸北拜 於 2013/01/09 22:18 回覆

找更多相關文章與討論