Windows SDK 7.1とVisual Studio 2010
Windows SDKの最新版7.1をインスコしたのはいいけど、VS 2010から参照できない……あれぇ?
VS 2008の場合は、「Microsoft Windows SDK v7.1」→「Visual Studio Registration」→「Windows SDK Configuration Tool」を実行して、既にインストール済みのSDKのうち、どのバージョンを使うかドロップダウンリストから選んで「Make Current」ボタンを押せば良いんですが、VS 2010に対しては適用されない……ちょっと調べてみたところ、下記に解決方法が紹介されてありました。情報提供ありがとうございます。
・Visual Studio 2010 C++ で Windows SDK v7.1 を使うには?
・Visual Studio 2010 と Windows SDK v7.1 で BaseClasses のコンパイルをする
ああ……また仕様変更か……orz
要するにWindowsSdkDir環境変数マクロは、VC++のプロジェクトごとに設定してね、ということになったらしい。グローバル設定とか、「プラットフォーム ツールセット」の既定値の変更とかはできないの? これ、プロジェクト作成するたびにいちいち変更するのはすごく面倒なんですけど。逆にプロジェクトごとに、異なるバージョンのWindows SDKを使って開発しなくちゃいけないとき(古いツールのメンテナンスとかで、Windows SDKのバージョンを変えたくないとき?)は便利かもしれないですけど……。カスタム プロジェクト プロパティ シート(.propsファイル、これもVS 2008までは拡張子が.vspropsだった)を自分で作って、それを継承する手もありますが、毎回継承するのも何だかな……
ちなみにこのプロジェクト プロパティ シート、VS 2008までは、「全般」→「継承プロジェクト プロパティ シート」でも指定できてましたが、VS 2010からはプロパティ マネージャーからしか設定できなくなっているみたい。
以前にVC++追加ディレクトリに関してこの記事で紹介したように、ユーザー プロパティ シートを直接いじってWindows SDKバージョンの既定値を設定できないかな……プロパティ マネージャーのGUIからは操作できないっぽい(該当項目がない)んだよね……
※2012/02/20追記:
ここにプロパティ シートを直接いじって、デフォルトのプラットフォーム ツールセットを変更する方法が書いてありました。いったいどこからこの情報を仕入れてきたんだろ……MSDNとかマニュアルのどこかに書いてあるのだろうか……
なお、VS 2010をインストールすると、Windows SDK v7.0Aというのが同時にインストールされます。こいつはVS 2008 SP1用のWindows SDK v7.0とは別物扱いされていますが、多分ほとんど一緒だろうと思いきや、微妙にヘッダファイルやIDLファイルの一部が更新されていたり、新しいヘッダが追加されていたりしてます。VS 2008をインストールしたとき、Windows SDK v6.0Aというのが同時にインストールされるのとちょうど同じような感じかなぁ。単独のSDK v6.0は使ったことないんだよね。
……'A'ってなんだろう。
別に人柱になるつもりはありませんが、Visual Studioは今後もバージョンアップして使い続ける予定だし、自宅で個人開発しているときに仕様変更点をチェックしておけば、仕事で必要になったときにも役に立つ……はず。でも何処も不況の煽りで厳しいからなぁ……設備投資とか控えてるから、チーム全員が新しいIDEを使えるようになるのはかなり先の話かも。会社やめるか
思うに、使えない外注を減らして、少数精鋭でやるべきじゃないかな……。今の人員数にソフトウェアの規模が見合っていない気がする。あと、共通で使うクラス ライブラリとか、ちゃんと整備してくれよ……パッケージングとかバージョニングとか、個人でもやってるようなことをなんで組織でやってないんだよ……
2011/11/10追記:
そういえば、Intel Parallel Studio 2011 (Intel Parallel Composer 2011) をインスコして、コンパイラにIntel C++ Compiler 12を使う場合、「プラットフォーム ツールセット」で「Intel Parallel Composer 2011」を選ぶことになるんだが、Windows SDKのバージョンはどうなるんだ? 既定の7.0Aしか使えなくなるのか?
boostを入れてる最中に同じ症状を見つけ、やっとここで解決できました!
ありがとうございます。やっと眠れます。orz
それにしてもvs2010の出来は近年最悪に感じました。sp1に期待します。
投稿 sora | 2010/07/17 06:45
soraさま、
朝早くまでおつとめごくろうさまです(?)
些末ながらお役に立てて嬉しいです。
VS 2010は特にC++ユーザーにとってプラス面(C++0x一部対応とか)よりもマイナス面(IDEが全体的にアレな件)が大きいですよね。確かにSP1が出ないと使い物にならない予感です。僕も今MS Connectにちょこちょこ要望を出しているところです(反映されるかどうかは微妙ですが)。
投稿 sygh | 2010/07/18 01:16