Windows API 数据类型 和 自定义错误

Windows   函数常用的返回值类型

VOID   该函数运行不能失败,Windows 函数的返回值类型很少是 VOID

BOOL   函数运行失败返回值是 0 ,否则返回的是非 0 值,不要测试返回值是否为 TRUE

HANDLE   函数运行失败返回值是 NULL ,否则返回值为 HANDLE , 用于表示可以操作的一个对象 , 有些函数会返回
   INVALID_HANDLE_VALUE , 它被定义为 -1

PVOID    函数运行失败返回值是 NULL , 否则返回值为 PVOID , 以标识数据块的内存地址


当一个 Windows 函数检测到一个错误时,会调用一个称为线程本地存储器(thread-loca storage) 的机制,将错误代码号码与调用的
线程关联起来,这将使线程能够相互独立的运行,不会影响各自的错误代码

当 Windows 函数运行失败时 , 应该立即调用 GetLastError 函数

GetLastError 函数:

DWORD GetLastError(); 该函数返回线程的 32 位错误代码

LONG / DWORD 函数允许失败返回值是 0 或 -1


在调试程序的时候,通过在 Watch 窗口输入 @err.hr ,就可以显示线程的最后错误代码和英文描述


SetLastError 函数:

VOID SetLastError(DWORW dwCode); 设置错误代码 , 也可以自定义错误类型

posted on 2012-02-20 10:49  多个马甲  阅读(266)  评论(0编辑  收藏  举报