web-dev-qa-db-ja.com

インクルードファイル「d3dx9.h」を開けません

編集:もちろん、1時間作業してからここに投稿した直後に、私は愚かな間違いを見つけました...

プロジェクトで_#include <d3dx9.h>_を実行しようとすると、コンパイラエラーが発生します。 「致命的なエラーC1083:インクルードファイルを開けません: 'd3dx9.h':そのようなファイルまたはディレクトリはありません」というメッセージが表示されます。

  • DirectX SDKをインストールしています(また、再インストールしてみました)。
  • プロジェクトのプロパティ:
    • VC++ディレクトリは、すべての構成のインクルードディレクトリとライブラリディレクトリの「$(DXSDK_DIR)Include;$(IncludePath)」と「$(DXSDK_DIR)Lib\x86;$(LibraryPath)」に設定され、環境変数_%DXSDK_DIR%_はC:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\を指します期待される。
    • C/C++>一般設定には、[追加インクルードディレクトリ]に$(DXSDK_DIR)includeがリストされています
    • [リンカー]> [入力]> [追加の依存関係]には、デバッグ用に_d3dx9d.lib_が含まれ、リリース構成用に_d3dx9.lib_が含まれています。
  • Iamは、DirectXサンプルブラウザーからチュートリアルプロジェクトを正常にコンパイルおよび実行できます。
  • Visual StudioのIntellisense /オートコンプリートは_d3dx9.h_を検出し、ファイル内にある型名と関数名を提案します(そして、私が_#include_ ingである他のものには含まれません)。したがって、Intellisenseはそれを検出できるようです。

私が何を忘れているのか、他に何を試すのかについての提案はありますか?

ありがとう

19
chaosTechnician

ソリューションの他のプロジェクトの1つが#includeingされたファイルを#includeingされたファイルを#includeing d3dx9.hと私はそれらのパスをそのプロジェクトに追加していませんでした。

/ facepalm

6
chaosTechnician

あなたは一つのことを忘れました:

  1. VC++ディレクトリ->ライブラリディレクトリに移動します
  2. $(DXSDK_DIR)LIB\x86を追加
  3. 適用します。

できたお役に立てれば

13
dellos

[〜#〜] all [〜#〜]引用符で囲まれたパス( ")があることを確認する必要があります。$(DXSDK_DIR)includeの代わりに"$(DXSDK_DIR)include"が必要です。

7
Liviu M.

これらの提案をすべて試しましたが、どれも機能しませんでした。

Visual Studioの実行中にDirectXをインストールすると、$(DXSDK_DIR)変数は機能しません。私にとっての解決策は、Visual Studioを再起動することです(もちろん、上記のソリューションにパスを追加します)。

0