MS Visual C++ 2010 Express Edition. Установка и указание путей к DirectX SDK
Содержание
Intro
Программный пакет MS Visual Studio 2010 Express Edition включает в себя следующие интегрированные среды разработки (ИСР, IDE):- MS Visual C# 2010 Express
- MS Visual Basic 2010 Express
- MS Visual C++ 2010 Express
- MS Visual Web Developer 2010 Express
Установка MSVC++2010 Express
Для установки Microsoft Visual C++ 2010 Express нужен компьютер под управлением ОС Windows 7/8/8.1 с доступом в Интернет.На 15.01.2019 найти MS Visual Studio 2010 Express на сайте самой Microsoft практически нереально. Как ни парадоксально, но в наши дни эту в принципе бесплатную IDE проще всего найти на торрент-трекерах. Но мы скачаем её отсюда: http://allpcworld.com/download-visual-studio-2010-express-free
В случае скачивания ISO-образа MS Visual Studio 2010 Express порядок действий следующий.
- Скачиваем ISO-образ с MS Visual Studio 2010 (объём 1,7 Гб). Записываем его на чистый диск DVD-R (с помощью программ IMG Burning Rom, CDBurnerXP или другого Freeware-софта).
- Запускаем программу установки с записанного DVD-диска. В появившемся меню выбора IDE выбираем пункт "Microsoft Visual C++ 2010". (Другие IDE установи по желанию.)
- Следуем шагам программы установки (кнопка "Далее"). Принимаем условия лицензионного соглашения.
- Снимаем обе галочки, отказываясь от предложения установить дополнительно MS Silverlight (больше нужен веб-разработчикам) и Microsoft SQL Server.
- Выбираем путь установки. По умолчанию ставится в системный раздел, на который установлена ОС. Можно не менять. Нажимаем "Далее".
После установки и запуска, программа запросит регистрационный ключ, который теоретически можно получить, бесплатно зарегистрировавшись на сайте Microsoft. Но на практике ссылка на получение ключа в самой MS Visual C++ 2010 уже сейчас (04.07.2015) не работает. А на сайте Microsoft сам чёрт ногу сломит. Так что вводим этот ключ: 6VPJ7-H3CXH-HBTPT-X4T74-3YVY7 .
DirectX SDK
- Бесплатный набор библиотек, заголовочных файлов и примеров для создания игр и мультимедийных приложений под DirectX. Без него никак.
- Не трудно найти в Интернете.
- Не имеет своей программной оболочки.
В соответствующих каталогах расположены файлы (от версии к версии список может отличаться от нижеприведённого):
Developer Runtime | Девелоперские (они же debug-, отладочные, для разработчиков) версии библиотек времени выполнения (runtime library). На всякий случай. |
Documentation | Документация по DirectX SDK. Всё на английском языке. Размещена в двух CHM-файлах (directx_sdk.chm и windows_graphics.chm). Компилированные файлы справки Windows (CHM) имеют удобную древовидную навигацию и поиск. |
Extras | Отладочные (debug) версии драйверов DirectSound. Для данного курса не потребуются. |
Include | Заголовочные файлы для импорта функций DirectX. Самый нужный каталог. Путь к нему мы чуть позднее укажем в настройках MS Visual C++. |
Lib | Библиотеки DLL, содержащие функции DirectX. Самый нужный каталог. Путь к нему мы чуть позднее укажем в настройках MS Visual C++. Внутри 2 подкаталога ("x86" и "x64") для 32 и 64-разрядной версий ОС MS Windows соответственно. |
Redist | Т.н. "библиотека времени выполнения". Необходима для запуска игр, программированных под MS DirectX, на ПК. Включена по-умолчанию во все версии ОС MS Windows Vista/7. Так как это самая свежая версия, смело запускаем DXSETUP.exe из данного каталога и следуем шагам несложной программы установки для обновления компонентов DirectX в вашей ОС. |
Samples | 790 мегабайт примеров! Разложены по папкам в виде проектов (или т.н. "решений" (solution)), которые открываются и компилируются в исполняемый .exe файл в (правильно сконфигурированной) среде MS Visual Studio. Настоятельно рекомендуется для самостоятельного изучения, как только мы подготовим к работе нашу IDE. Для удобного просмотра можно использовать обозреватель примеров из подкаталога SampleBrowser. Все описания и комментарии в исходных кодах на английском языке. |
System | Системные файлы для инсталляции и деинсталляции DirectX SDK, DOT NET Framework 2.0 (специальная надстройка для ОС для выполнения приложений, созданных под архитектуру .NET; здесь не потребуется) и др. На всякий случай установи vc10redist_x86.exe из подкаталога uninstall (библиотеки времени выполнения для приложений, спрограммированных на IDE MS Visual С++ 2010). |
Utilities | Утилиты (служебные приложения). Содержит множество дополнительных приложений (подкаталог /bin -исполняемые двоичные файлы; подкаталог source - исходные коды этих приложений) для конвертирования мешей (полигональных сеток), текстур, для стандартизованного описания игрового проекта и другие. Пока не нужен. |
Утилиты (служебные приложения) DirectX
D3DSpy
Отладочный инструмент, который мониторит запущенные на ПК DirectX-приложения и отображает данные о текущем статусе DirectX.1Оно выводит в виде списка вызовы (calls) API и текущие значения внутренних переменных DirectX. DirectX Caps Viewer
Caps
- сокращение от "capabilities" (англ. "возможности").Показывает в виде иерархического дерева информацию о компонентах DirectX и соответствующих аппаратных устройствах.
DirectX Diagnostic Tool
- Выдаёт информацию о программных компонентах DirectX.
- При установленном DirectX SDK его можно запустить через Win+R, набрав в командной строке DXDIAG. DirectX Error Lookup
- Здесь пользователь вводит номер ошибки (Hex или Decimal) и по нажатию кнопки Look Up получает её (ошибки) текстовое описание.
DirectX Texture Tool
Конвертер файлов графических изображений. Конвертирует файлы форматов jpg, bmp, tga в dds (внутренний формат текстур Direct3D).Mesh Viewer (только DirectX SDK 8 и ниже)
Утилита для просмотра 3D-моделей формата .x. Незаменима при просмотре моделей перед экспортом их в игру.Создаём тестовый Проект
- Стартуй MS Visual C++ 2010.
- В верхней части окна IDE видим полосу Главного меню (Файл, Правка, Вид,..). Выбираем в нём: Файл->Создать-> Проект...
- В окне "Создать проект" выбираем: "Проект Win32", в строке "Имя" пишем название проекта (в нашем случае Test01).
Строки "Расположение" и "Имя Решения" заполняются автоматически (при необходимости изменяем).
- Жмём "OK", "Далее".
- На странице "Параметры приложения": оставляем "Приложение Windows" и отмечаем пункт "Пустой проект".
- Жмём "Готово".
Проект создан. Так как это пустой проект, он не содержит в себе никаких файлов. В левой части расположен "Обозреватель решений". Если его нет, в главном меню выбираем: Вид->Другие окна->Обозреватель решений. Или комбинация горячих клавиш Ctrl+Alt+L. В Обозревателе решений видна древовидная структура Проектов, входящих в данное Решение. Чуть ниже названия Проекта видим специально заготовленные папки (в MSVC++2010 они называются "фильтры") для файлов Проекта:
ФИЛЬТР | ОПИСАНИЕ |
---|---|
Внешние зависимости | Чаще всего здесь размещаются заголовочные файлы различных сторонних библиотек. Причём, они представлены здесь в виде ссылок. "Физически" файлы, как правило, находятся за пределами каталога Проекта и не являются его частью. Содержимое каталога "Внешние зависимости" (если внимательно посмотреть, то он тоже является своеобразным ярлыком или ссылкой) генерируется автоматически в процессе линковки и поиска так называемых внешних "зависимых" библиотек. |
Заголовочные файлы | Содержит заголовочные файлы Проекта (.h). |
Файлы исходного кода | Содержит исходные файлы Проекта (.cpp). |
Файлы ресурсов | Содержит так называемые "бинарные" ресурсы (формы, иконки, звуки и т.д.). |
Напомним, в нашем случае сейчас все эти фильтры пусты. Программист самостоятельно создаёт внутри них соответствующие исходные и заголовочные файлы, последовательно редактируя их в правой части окна IDE.
Начиная с версии 8.0 (MS Visual Studio 2005), при создании нового Проекта IDE автоматически создаёт для него Решение.
"Решением" (от англ. solution) в принятой у Microsoft терминологии называется группа Проектов, объединённых общей темой. То есть, в одно Решение может входить несколько Проектов. В нашем случае это неважно, и в нашем Решении будет один Проект (пока один). Обрати внимание, что по умолчанию все Решения и Проекты сохраняются в каталог c:\users\<имя пользователя>\documents\visual studio 2010\Projects (при желании можно изменить).
Примечание
Из-за того, что MS Visual C++ 2010 хранит все настройки Проектов в их же каталоге, данную процедуру настроки путей придётся проделывать при создании каждого нового Проекта (причём, даже в том случае, когда эти Проекты принадлежат к одному и тому же Решению!). Пути сохраняются вместе с Проектом и при повторном открытии настраивать их заново не требуется. Также не требуется настройка путей при открытии примеров из MS DirectX SDK и некоторых других Проектов/Решений, в которых уже содержатся сведения о расположении необходимых библиотек и заголовочных файлов.
- Следуя инструкциям статьи Создание приложений Сpp Win32, добавь в Проект файл исходного кода WinMain.cpp .
- Скопируй и вставь в окно редактора MSVC++2010 код базового приложения Windows:
// Файл: WinMain.cpp // Описание: Шаблон оконного приложения Windows. Простейшее (базовое) приложение Windows, // выводящее на экран окно. // www.igrocoder.ru 2015 // При использовании просьба указывать ссылку на источник. #define STRICT #define WIN32_LEAN_AND_MEAN // Уменьшаем кол-во используемых компонентов в программе. #include <windows.h> // Прототип функции WinMain int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR szCmdLine, int nCmdShow); // Объявление оконной процедуры LRESULT CALLBACK WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); // Реализация главной функции программы int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { HWND hWnd; // Дескриптор окна MSG msg; // Структура сообщения WNDCLASSEX wndClass; // Объявляем экземпляр класса программы на базе WNDCLASSEX // Заполняем структуру оконного класса wndClass.cbSize=sizeof(wndClass); wndClass.style=CS_CLASSDC; // Поочерёдный доступ к контексту устройства (Device Context) wndClass.lpfnWndProc=WindowProc; // Оконная процедура wndClass.cbClsExtra=0; wndClass.cbWndExtra=0; wndClass.hInstance=hInstance; // Экземпляр окна wndClass.hIcon=LoadIcon(NULL, IDI_APPLICATION); // Пиктограмма приложения wndClass.hIconSm=LoadIcon(NULL, IDI_APPLICATION); // Малая пиктограмма приложения wndClass.hCursor=NULL; // Курсор при наведении на окно wndClass.hbrBackground=NULL; // Закрашиваем окно белым цветом wndClass.lpszMenuName=NULL; // Дескриптор Главного меню окна. Сейчас оно не нужно wndClass.lpszClassName="GameClass"; // Обзываем оконный класс. // Если класс не зарегистрируется, досрочно прерываем выполнение программы if(!RegisterClassEx(&wndClass)) return FALSE; // Создание окна на основе зарегистрированного класса hWnd=CreateWindow( "GameClass", // Класс окна. "My game title", // Текст заголовка (на верхнем тулбаре). WS_OVERLAPPEDWINDOW, // Обычное окно с кнопками в правом верхнем углу. 0, 0, // Координаты X и Y GetSystemMetrics(SM_CXSCREEN), // Ширина окна GetSystemMetrics(SM_CYSCREEN), // Высота окна NULL, // Дескриптор родительского окна NULL, // Дескриптор меню hInstance, // Дескриптор экземпляра приложения NULL); // Дополнительные данные if(hWnd==NULL) return(FALSE); // Собственно, показываем окно ShowWindow(hWnd, nCmdShow); UpdateWindow(hWnd); // Очищаем структуру сообщения ZeroMemory(&msg, sizeof(MSG)); // Процедура выборки сообщений // Продолжаем бесконечно, пока не получим сообщение WM_QUIT (завершение). while(msg.message != WM_QUIT) { // Просмотрим очередь: вдруг там ожидает сообщение... if(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) { // Есть сообщение! Обработаем его как обычно... TranslateMessage(&msg); DispatchMessage(&msg); } else { // Нет сообщений, ожидающих обработки. // Значит приступим к выполнению критичных ко времени операций. // Например, займёмся рендерингом. } } //Удаляем регистрацию класса UnregisterClass("GameClass", hInstance); // Выходим из приложения return (msg.wParam); } // Оконная процедура LRESULT CALLBACK WindowProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) { switch(msg) { case WM_DESTROY: // В случае этого сообщения... PostQuitMessage(0); // Говорим Windows закрыть приложение break; // В случае любых других сообщений... default: return DefWindowProc(hWnd, msg, wParam, lParam); } return 0; }
Указываем пути к DirectX SDK
Укажем пути к DirectX SDK у нашего тестового приложения. Хоть для него это лишнее, оно всё равно скомпилируется и будет работать.- Убедись, что MS Visual C++ 2010 и DirectX SDK успешно установлены, и что MS Visual C++ 2010 запускается (по умолчанию ярлык расположен в меню Пуск).
- Во всплывающем меню выбираем пункт "Свойства".
В появившемся меню свойств проекта выбираем "Каталоги VC++". В правой части этой страницы расположены пути ко всевозможным каталогам. Здесь нас интересуют только 2 строки: Каталоги включения и Каталоги библиотек.
Указываем каталог включения (Include)
- Щёлкаем левой кнопкой мыши по пункту Каталоги включения. В правой части этой строки видим кнопку с чёрным треугольником, указывающим на наличие выпадающего меню. Нажимаем на неё -> выбираем "Изменить..."
- В появившемся меню "Каталоги включения" жмём кнопку "Создать строку" (с жёлтой папкой) и указываем полный путь к заголовочным (include) файлам DirectX SDK.
- Жмём "ОК".
Указываем каталог библиотек (lib)
- Щёлкаем левой кнопкой мыши по пункту Каталоги библиотек.
- Нажимаем на неё -> выбираем "Изменить...".
В нашем случае это C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86. Можно просто выбрать каталог из дерева каталогов, нажав кнопку с троеточием, расположенную справа от строки ввода.
- Жмём "ОК".
- На Странице свойств тоже жмём "ОК".
- Сохрани Решение/Проект (Файл -> Сохранить все).
Компилируем Проект
- Запускаем компиляцию (кнопка с зелёным треугольником на Панели инструментов или <F5> на клавиатуре).
В случае успешной компиляции на экране появится окно с белым фоном.
Итоги
MS Visual C++ 2010 Express Edition установлена, протестирована и готова к работе.Последние изменения страницы Суббота 21 / Май, 2022 01:25:23 MSK
Последние комментарии wiki