Почему Visual Studio 2008 не может найти файл afxcontrolbars.h?

Я установил VS 2008. Когда я пытаюсь построить проект, я получаю сообщение об ошибке:

Не удается открыть файл включения: 'afxcontrolbars.h': такого файла или каталога нет

Итак, я думаю, мне нужно установить элементы управления ленты для этого. Подскажите, пожалуйста, где SDK доступен для скачивания? Ссылка была бы очень полезна; Я сам гуглил, но не смог найти.:(

2 ответа

Решение

Это кажется странной проблемой для меня. afxcontrolbars.h конечно входит в стандартную установку VS 2008. Единственный способ пропустить компоненты MFC - это установить версию Express, которая не поддерживает MFC.

Первое, что я хотел бы сделать, это проверить, могу ли я создать и скомпилировать совершенно новое, пустое приложение MFC, используя один из встроенных шаблонов. Если это работает, значит что-то не так со свойствами вашего проекта.

Также проверьте вручную в \Microsoft Visual Studio 9.0\VC\atlmfc\include каталог, чтобы увидеть, если вы можете найти файл заголовка, прежде чем пытаться вручную переустановить SDK платформы. Это может быть так просто, как Visual Studio не может найти файл. Чтобы исправить это, откройте диалоговое окно "Параметры", разверните дерево "Проекты и решения", выберите "Каталоги VC++", выберите "Win32" и "Включить файлы" в комбинированных полях вверху и убедитесь, что $(VCInstallDir)atlmfc\include входит в список:

Параметры Visual Studio - Проекты и решения - Каталоги VC++ - Включаемые файлы Win32

Конечно, элемент управления ленты (и другие элементы, относящиеся к ленте) не были добавлены в VS 2008 до MFC Feature Pack. Вам нужно будет загрузить и установить его, чтобы скомпилировать приложения, использующие эти функции в VS 2008. Вы можете бесплатно загрузить пакет дополнительных компонентов здесь.

У меня VS2008 на 64-битной машине Win7. В моем случае включаемые файлы были установлены в c:\program(x86) папка, но VS был установлен в c:\program,

Изменяя путь к "жестко закодированному" пути

C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\atlmfc\include

теперь это работает!

Другие вопросы по тегам