Visual Studio 2010 Jaβ2が出たそうなので自宅環境に入れてみる。
2008まではメニューから標準のヘッダファイルやライブラリファイルの指定をする「VC++ Directories」ってな項目があったのだけれど 2010から消えていたのよね。
β1の時はプロジェクトファイルに以下のような指定があって、例えば「C:\Documents and Settings\USER_NAME\Local Settings\Application Data\Microsoft\VisualStudio\10.0\Microsoft.Cpp.Win32.User.Props」なファイル探せば良かった。
$(LocalAppData)\Microsoft\VisualStudio\10.0\Microsoft.Cpp.$(Platform).user.props
β2になって、このファイルを変更しても反映されなくなった。
プロジェクトファイルを見てみると…以下のような記述に変わってる。
$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props
UserRootDirってのを調べてみると、「C:\Documents and Settings\USER_NAME\Local Settings\Application Data\Microsoft\MSBuild\v4.0」となっているのがわかる。
結果として、「C:\Documents and Settings\USER_NAME\Local Settings\Application Data\Microsoft\MSBuild\v4.0\Microsoft.Cpp.Win32.user.props」をいじることで無事に反映されるようになった。
まぁ βだから仕方ないとは思うのだけれど、そもそも何故に 2008までのように GUIで設定させるようにしなかったのだろう?
プロジェクト毎にある「VC++ Directories」と「Additional Include Directories」はどのように使い分けるんだろう?
2010/4/30追記
Visual C++ 2010 Express jaでも同様なのを確認。
他の Editionでも同じかと。
2010/5/1追記
GUIで設定する方法がわかった。
- メニューから「ツール – 設定 - 上級者用の設定」をチェック。
- メニューから「表示 – プロパティマネージャ」を選択。
- 適当なプロジェクトの適当な構成の下の「Microsoft.Cpp.Win32.user」という項目のプロパティを表示。
- そこに「VC++ディレクトリ」があり、件のファイルの内容を反映しているので適当に編集。
- 保存を行えば件のファイルに反映されるし、他のプロジェクトや構成にも反映される。
わかってしまえばどうと言うことはないのだけれど、共通の設定がこういう形になっているのは美しくないよなぁ
2014/03/19追記
VC2013での設定方法。
- メニューから「表示 – その他のウィンドウ – プロパティマネージャ」を選択。
- 適当なプロジェクトの適当な構成の下の「Microsoft.Cpp.Win32.user」という項目のプロパティを表示。
- そこに「VC++ディレクトリ」があり、件のファイルの内容を反映しているので適当に編集。
- 保存を行えば件のファイルに反映されるし、他のプロジェクトや構成にも反映される。
プロパティマネージャの位置が少しわかりにくくなっただけか。
ちなみに 64bitは 32bitとは独立しており、Microsoft.Cpp.x64.user.propsを編集する。
2019/12/7追記
どうやら VC2019ではこの辺りは非奨励になった模様。
FYI: Visual Studio プロジェクトでのプロパティの継承
2024/03/11追記
結局のところ、VS2022では以下が現状と。
- 共通の設定を記述したプロパティシートを各構成もしくはプロジェクトのコンテキストメニューから作成。
- プロパティシートの内容は Debug共通、Release共通、Win32共通(Microsoft.Cpp.Win32.userがこれに当たる)、x64共通(Microsoft.Cpp.x64.user.propsがこれに当たる)という感じで分け、各構成(Debug|Win32 , Debug|x64 , Release|Win32 , Release|x64)で必要なものを選択して読み込ませる。