Дипломированных специалистов «Информатика и вычислительная техника»


Каркасное Windows-приложение на C/C++



Download 12,06 Mb.
Pdf ko'rish
bet207/357
Sana22.02.2022
Hajmi12,06 Mb.
#115195
TuriДиплом
1   ...   203   204   205   206   207   208   209   210   ...   357
Bog'liq
assembler uchebnik dlya vuzov 2-e izd YuRXUW1

Каркасное Windows-приложение на C/C++
Обсуждение вопросов программирования для Windows на ассемблере начнем с об-
суждения программы на языке C/C++. Не нужно удивляться такому подходу —
«цель оправдывает
Нам необходимо, во-первых, понять общие принци-
пы построения оконных Windows-приложений. Во-вторых, разобраться с тем, ка-
кие средства ассемблера при этом используются. Добиваться этих целей без пред-
варительного обсуждения нецелесообразно. Сделаем это мягко и ненавязчиво, через
рассказ о построении минимального Windows-приложения на языке C/C++. В ходе
его разработки мы введем необходимую терминологию и сможем больше внима-
ния уделить логике работы Windows-приложения, а не деталям его реализации.
После этого мы с относительной легкостью разработаем эквивалентное приложе-
ние на
Приступая к разработке первого (и не только) Windows-приложения, важно
понимать, что сам язык программирования мало влияет на его общую структуру.
Это обстоятельство, кстати, и позволит нам чуть позже с относительной легкостью
сменить инструментальное средство разработки Windows-приложений с C/C++ на
ассемблер.
Минимальное приложение Windows состоит из трех частей:
* главной функции;
цикла обработки сообщений;
* оконной функции.
Выполнение любого оконного Windows-приложения начинается с главной функ-
ции. Она содержит код, осуществляющий настройку (инициализацию) приложе-


Каркасное Windows-приложение на C/C++ 369
ния в среде Windows. Видимым для пользователя результатом работы главной
функции является появление на экране графического объекта в виде окна. Послед-
ним действием кода главной функции является создание цикла обработки сообще-
ний. После его создания приложение становится пассивным и начинает взаимо-
действовать с внешним миром посредством специальным образом оформленных
данных — сообщений. Обработка поступающих приложению сообщений осуществ-
ляется специальной функцией, называемой оконной. Оконная функция уникаль-
на тем, что может быть вызвана только из операционной системы, а не из приложе-
ния, которое ее содержит (функция обратного вызова). Тело оконной функции
имеет определенную структуру, о которой мы поговорим далее. Таким образом,
Windows-приложение, как минимум, должно состоять из трех перечисленных эле-
ментов. В листинге
приведен вариант минимального приложения на языке
C/C++.
Листинг
Каркасное Windows-приложение на языке C/C++

LRESULT CALLBACK
,
,
,
char szClassWindow[] = "Каркасное приложение"; /*Имя класса
int WINAPI
hlnst, HINSTANCE hPrevInst,
LPSTR
int nCmdShow)
HWND hWnd;
WNDCLASSEX wcl;
/* Определение класса окна */
wcl.cbSize =
структуры WNDCLASSEXA
=
//CS (Class Style) - стиль класса окна
= WindowProc;
функции окна
=0;
внутреннего использования Windows
= 0;
внутреннего использования Windows
= hlnst;
данного приложения
=
иконка
=
курсор
=(HBRUSH)GetStocKObject
= N U L L ;
белым цветом без меню
= szClassWindow;
класса окна
;
значка, связываемого с классом окна
класс окна
if
return 0;
окно и присвоить дескриптор окна переменной hWnd
0,
стиль окна
szClassWindow,
класса окна
"Каркас программы для Win32 на
окна
WS_OVERLAPPEDWINDOW,
окна
CW_USEDEFAULT, //Х-координата верхнего левого угла окна
//Y-координата верхнего левого угла окна
CW_USEDEFAULT,
окна
CW_USEDEFAULT,
окна
NULL,
родительского окна
NULL,
меню окна
hlnst,
приложения, создавшего окно
на область данных приложения
окно и перерисовать содержимое
ShowWindow (hWnd,
UpdateWindow (hWnd);

Download 12,06 Mb.

Do'stlaringiz bilan baham:
1   ...   203   204   205   206   207   208   209   210   ...   357




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish