DirectX更新

ふと思い立って見てみたらDirectX SDKのFebruary 2010が出ていたのでNovember2008からアップデートしました。といってもMarch 2009をすっ飛ばしただけかな?


最近のSDKインストーラが勝手にVisualC++にインクルードパスやライブラリパスを追加してくれて便利ですよね。で、前のバージョンをアンインストールして入れてリビルドボタンをぶっぱしたら

fatal error C1083: include ファイルを開けません。'dxerr9.h': No such file or directory

というエラーが大量に。まあ同じものが出てるだけだし分かりやすいエラーなのでとりあえず安心。他のヘッダは読みこめているようだしとりあえずインストール先のIncludeフォルダへ。そこを漁ると'DxErr.h'を発見。とりあえず何も考えずに'dxerr.h'に書き換えてビルドボタンをぱなす。

error C2039: 'DXGetErrorDescription9' : '`global namespace'' のメンバではありません。
error C3861: 'DXGetErrorDescription9': 識別子が見つかりませんでした
error C2039: 'DXGetErrorString9' : '`global namespace'' のメンバではありません。
error C3861: 'DXGetErrorString9': 識別子が見つかりませんでした

108個ものエラーが出ましたが全部これ。DxErr.hを見るとどうやら全関数から'9'が消えているみたいです。

// Args: HRESULT hr Can be any error code from
// XACT XAUDIO2 XAPO XINPUT DXGI D3D10 D3DX10 D3D9 D3DX9 DDRAW DSOUND DINPUT DSHOW

バージョン・分野に関わらずDirectX全てのエラーに対応したようですね。