@H_502_4@Linux errno.h cloudmail的博客 Linux通过errno这个变量来记录最近一次出错的内容,类似Windows下的GetLastError()函数的返回值。
目录
-
VB声明
-
VC声明
-
说明
-
返回值
-
常用的错误代码
-
注解
-
一个使用的错误调试方法
Declare Function GetLastError Lib "kernel32" Alias "GetLastError" () As Long
求补充VC下使用
方法。
DWORD GetLastError(VOID);
针对之前
调用的api
函数,用这个
函数取得扩展
错误信息(在vb里使用:在vb中,用Err
对象的GetLastError
属性获取GetLastError的值。这样做是必要的,因为在api
调用返回
以及vb
调用继续执行期间,vb有时会重设GetLastError的值)。
Long,由api
函数决定。请参考api32.txt
文件,其中列出了一系列
错误常数;都以ERROR_前缀起头。
ERROR_INVALID_HANDLE 无效的句柄作为一个
参数传递
ERROR_CALL_NOT_IMPLEMENTED 在win 95下
调用专为win nt设计的win32 api
函数
ERROR_INVALID_PARAMETER
函数中有个参数不正确
GetLastError返回的值通过在api
函数中
调用SetLastError或SetLastErrorEx设置。
函数
并无必要设置上一次
错误信息,所以即使一次GetLastError
调用返回的是零值,也不能
担保
函数已成功执行。只有在
函数调用返回一个
错误结果时,这个
函数指出的
错误结果
才是有效的。通常,只有在
函数返回一个
错误结果,而且已知
函数会设置GetLastError
变量的前提下,才应访问GetLastError;这时能保证获得有效的结果。SetLastError函
数主要在对api
函数进行模拟的dll
函数中使用,所以对vb
应用程序来说是没有意义的。
在
Visual C++ 中,可以在监视窗口
添加 $err,hr 一行来实时
显示错误。调试过程中,该项相当于在每次
调用API
函数之后
调用GetLastError
函数。其值由两部分组成,一个是
错误代码(十六进制),另一个是
错误代码所对应的文本
提示。该
方法支持多语言。
[1]