Подтвердить что ты не робот

Не удается открыть файл "d3dx9.h"

Изменить: Конечно, сразу после работы над ним в течение часа, после публикации здесь, я нашел тупую ошибку...

Я получаю ошибки компилятора при попытке #include <d3dx9.h> в проекте. Я получаю "фатальную ошибку C1083: не могу открыть файл include:" d3dx9.h ": нет такого файла или каталога".

  • У меня установлен DirectX SDK (я также просто попробовал переустановить его безрезультатно).
  • В свойствах проекта:
    • В каталогах VС++ установлены значения "$(DXSDK_DIR)Include;$(IncludePath)" и "$(DXSDK_DIR)Lib\x86;$(LibraryPath)" для каталогов Include и Library соответственно для всех конфигураций &mdash, а переменная среды %DXSDK_DIR% указывает на C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\, как ожидалось.
    • C/С++ > Общие настройки имеют $(DXSDK_DIR)include, указанные в дополнительных каталогах Include
    • Linker > Input > Additional Dependencies имеет d3dx9d.lib для отладки и d3dx9.lib, включенных в конфигурацию Release.
  • Я могу успешно скомпилировать и запустить учебные проекты из DirectX Sample Browser.
  • Visual Studio Intellisense/autocomplete найдет d3dx9.h и предложит имена типов и функций, которые находятся внутри файла (и не включены ни в чем другое, я #include ing), поэтому кажется, что Intellisense может его найти.

Любые предложения о том, что я забываю или что еще попробовать?

Спасибо

4b9b3361

Ответ 1

Я не понимал, что один из других проектов в решении был #include с файлом, который был #include с файлом, который был #include ing d3dx9.h, и я не добавил эти пути в этот проект.

/Facepalm

Ответ 2

вы забыли одну вещь:

  • Перейти в VС++ Каталоги → Библиотечные каталоги
  • добавить $(DXSDK_DIR)LIB\x86
  • применить.

Готово. Надеюсь, что это поможет

Ответ 3

Вы должны убедиться, что у вас есть ВСЕ пути, сжатые кавычками ("). Вместо $(DXSDK_DIR)include вы должны иметь "$(DXSDK_DIR)include"

Ответ 4

Я пробовал все эти предложения, и никто не работал.

Выключает переменную $(DXSDK_DIR), не работает, если вы устанавливаете DirectX, пока Visual Studio все еще работает. Решение для меня состояло в том, чтобы перезапустить Visual Studio (+, конечно, добавить пути в перечисленные выше решения).