学习笔记——windows程序运行原理

操作系统把它所能够完成的功能以函数的形式提供给应用程序使用,应用程序对这些函数的调用就叫做系统调用,这些函数的集合就是Windows操作系统提供给应用程序编程的接口(Application Programming Interface),简称Windows API。

操作系统将每个事件都包装成一个称为消息的结构体MSG来传递给应用程序,
MSG结构定义如下:
typedef struct tagMSG {      
     HWND   hwnd;     
     UINT   message;
     WPARAM wParam;
     LPARAM lParam;
     DWORD  time;
     POINT  pt;
} MSG;

关于句柄
句柄(HANDLE),资源的标识。
操作系统要管理和操作这些资源,都是通过句柄来找到对应的资源。按资源的类型,又可将句柄细分成图标句柄(HICON),光标句柄(HCURSOR),窗口句柄(HWND),应用程序实例句柄(HINSTANCE)等等各种类型的句柄。操作系统给每一个窗口指定的一个唯一的标识号即窗口句柄。

WinMain函数 
Windows程序的入口函数
int WINAPI WinMain(
  HINSTANCE hInstance,      // handle to current instance
  HINSTANCE hPrevInstance,  // handle to previous instance
  LPSTR lpCmdLine,          // command line
  int nCmdShow              // show state
);


窗口的创建
      创建一个完整的窗口需要经过下面四个操作步骤:
设计一个窗口类;
注册窗口类;
创建窗口;
显示及更新窗口。

typedef struct _WNDCLASS {
   UINT     style;
   WNDPROC lpfnWndProc;
   int      cbClsExtra;
   int      cbWndExtra;
   HANDLE  hInstance;
   HICON    hIcon;
   HCURSOR  hCursor;
   HBRUSH   hbrBackground;
   LPCTSTR  lpszMenuName;
   LPCTSTR  lpszClassName; 
} WNDCLASS;


 

posted on 2005-08-08 19:37  秋雨飘飞  阅读(1131)  评论(0编辑  收藏  举报