Начинаем писать на Microsoft Visual C++ 2008
под Windows (hInstance,
hPrevInstance, APIENTRY)
В этом уроке мы сделаем программу, которая будет показывать сообщения на экран с помощью возможностей Windows. Для начала, запустим Visual C++ и создадим*
проект Win32 Project (рис. 1)
Рисунок 1. Создание проекта
Как и в прошлый раз, выбираем имя новому проекту и нажимаем OK. В появившемся окне нажимаем Finish.
В редакторе сразу открывается cpp-файл, в котором будет находится шаблон нашей программы. Если не открылся, ищем его в Solution Explorer, он будет называться <имя проекта>.cpp и открываем его.
Вот код второй программы, мы просто заменяем то, что
сгенерировала среда Microsoft Visual Studio 2008
на наш код:
#include "stdafx.h" //заголовочный файл, нужен в каждом cpp-файле в любом win32-приложении, созданом с помощью мастера проектов
#include <windows.h> //заголовочный файл, позволяет использовать функции Windows (Win32API)
//точка входа в win32-приложении (функция, аналогичная той, что мы рассматривали в первом уроке)
//в эту функцию при запуске приложения передаются следующие параметры (сейчас они нам не пригодятся)
//hInstance - текущая инстанция приложения (используется для создания окон в приложении)
//hPrevInstance - предыдущая инстанция приложения (всегда 0)
//lpCmdLine - параметры командной строки
//nCmdShow - в каком виде должно запускатся приложение
int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow)
{
//функция MessageBox показывает на экран сообщение
//первый параметр - handle окна, которое показало сообщение (0, если нет окон)
//второй параметр - сообщение, приставка L обязательна, т.к. передаваемая строка должна быть в юникоде
//третий параметр - заголовок сообщения
//четвертый параметр - как будет выглядеть окно сообщения
//MB_OK - на окне будет кнопка OK
//MB_OKCANCEL - OK и Отмена
//MB_ICONINFORMATION - на окне будет иконка Информация
//MB_ICONQUESTION - на окне будет иконка Вопрос
//MB_ICONWARNING - на окне будет иконка Предупреждение
//значок '|' обозначает операцию 'побитовое ИЛИ' и позволяет смешивать несколько флагов
//подробнее о функции MessageBox на сайте Microsoft: http://msdn.microsoft.com/en-us/library/ms645505%28VS.85%29.aspx
MessageBox(0, L"Привет мир!", L"Сообщение", MB_OK);
MessageBox(0, L"Программа завершается...", L"Сообщение", MB_ICONINFORMATION | MB_OK);
return 0;
}
Скриншоты, помеченные знаком *,
являются цитатами и иллюстрациями в
соответствии со ст. 1274 ГК РФ программного
продукта "Microsoft Visual C++ Express Edition",
авторское право на который принадлежит
корпорации Microsoft..
|