一个典型的Windows SDK程序

1. SDK 程序总体框架:

    资源文件( .rc ) + 头文件( .h ) -----> .res

    代码 ( .cpp )   + 头文件( .h ) -----> .obj

 

    然后 .res + .obj 及各种库文件 链接而成 .exe 文件

 

2. SDK 程序分析

   
// Global Variables:
HINSTANCE hInst;                                        // current instance
TCHAR szTitle[MAX_LOADSTRING];                 // The title bar text
TCHAR szWindowClass[MAX_LOADSTRING];      // The title bar text

 

// Foward declarations of functions included in this code module:
ATOM    MyRegisterClass(HINSTANCE hInstance);
BOOL    InitInstance(HINSTANCE, int);
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
LRESULT CALLBACK About(HWND, UINT, WPARAM, LPARAM);

 

 

/*

数据类型:

 HINSTANCE   指向结构体的指针 struct xxx{ int unuse ; };
 TCHAR      char
 ATOM        WORD       unsigned short
 BOOL        int
 LRESULT    LONG
 WPARAM    UINT(在32位环境中是32位)
 LPARAM     LONG
 CALLBACK, WINAPI    __stdcall
 APIENTRY  WINAPI
 HACCEL      如HINSTANCE

*/

 

主程序: WinMain( .. ){

               MyRegister();               // 注册窗口

               MyInitInstance();          // 创建窗口并显示

               while( GetMessage()){

                  分发消息;    

               }

             }

 

被调函数:消息处理函数

 

 

消息及消息参数意思:

 

WndProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)

 

WM_COMMAND:

        所有控制元件传来的信息都是WM_COMMAND, 再由参数分辨是哪一种元件(LOWORD(wParam), 即ID号)及是哪一种通知(HIWORD(wParam), 即事件).

 

 

 

核心对象:

     CreateEvent

     CreateMutex

     CreateSemaphore

     CreateFile

     CreateFileMapping

     CreateProcess

     CreateThread

 

     结束方式: CloseHandle

 

SYSTEMTIME st;

GetSystemTime(&st);

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值