Windows应用程序

2016-12-12  本文已影响19人  笑笑学生

http://services.mtps.microsoft.com/ServiceAPI/catalogs/VisualStudio12/zh-CN

消息队列,先进先出,元素:消息

应用程序获取状态变化,并作出消息响应

LP,长指针(long point)

命令行cmd打开记事本:notepad 1.txt

win32应用程序设置命令行参数:Project——Setting——Debug——Program arguments(win.txt)

行前鼠标左键设置断点——F5调试运行

WinMain函数为程序入口点,由操作系统调用,并进行参数赋值

窗口类(结构体):WNDCLASS

WNDCLASS wndclass;

wndclass.style=CS_HEADRAW | CS_VREDRAW;//水平重绘和垂直重绘

wndclass.lpfnWndProc=WinSumPric;//函数的指针,函数名代表函数代码的首地址

Data Types(Microsoft Foundation文档)

CT,常量(constant)

STR,字符串(string)

RegisterClass(&wndclass);//注册一个窗口类

MSG msg;

//消息循环,从消息队列取出消息

while(GetMessage(&msg,NULL,00))

{

TranslateMessage(&msg)

;//对消息对进行转换并生成新的消息。WM_KEYDOWN和WM_KEYUP消息转换为WM_CHAR消息放入消息队列

DispatchMessage(&msg);

//分发消息,将消息给操作系统,操作系统调用(设计窗口类时设定的)回调函数。对不同的消息做出响应

}

总结:当一个应用程序建立时,操作系统为应用程序分配一个消息队列,与程序相关的消息全部被放入消息队列中,应用程序使用GetMessage()从消息队列取出具体的消息。

if条件判断时通常把常量放前面。防止==写为=

CALLBACK  _stdcall标准调用

_cdecl  C语言调用约定

差别:参数传递顺序,堆栈清除

工程,设置,c++,代码生成,调用约定。

上一篇下一篇

猜你喜欢

热点阅读