admin管理员组

文章数量:1531792

2024年3月18日发(作者:)

GetLastError返回的值通过在api函数中调用SetLastError或SetLastErrorEx设置。

函数并无必要设置上一次错误信 息,所以即使一次GetLastError调用返回的是零值,也

不能担保函数已成功执行。只有在函数调用返回一个错误结果时,这个函数指出的错误结

果才是 有效的。通常,只有在函数返回一个错误结果,而且已知函数会设置GetLastError

变量的前提下,才应访问GetLastError;这时能保证获 得有效的结果。SetLastError函数

主要在对api函数进行模拟的dll函数中使用,所以对vb应用程序来说是没有意义的 。

当函数的返回值显示此调用将返回有用的数据时,应该立即调用 GetLastError 函数,

这是因为当调用成功时,一些函数调用 GetLastError(0) 来删除掉通过函数调用失败设置

的错误代码很多 Win32 API 中的函数当函数调用失败时设置线程的错误代码值。有几个

函数当用于函数调用成功时,设置此代码值,函数调用失败,一般由一个返回错误代码值

来显示。如 FALSE、NULL、0xFFFF 或 C1,一些函数在调用成功的情况下调用

GetLastError,这些情况已写在每个函数的参考页中。

错误代码是 32 位值(但是第31位是最重要的位),第29位是为应用程序定义的错

误代码值,系统没有设置这种错误代码,如果为应用程序定义了一个错误代码,则设第29

位 的值为1,这表明错误代码已经被一个应用程序定义,并保证次错误代码不与系统定义

的错误代码发生冲突。

错误代码

【0】-操作成功完成。

【1】-功能错误。

【2】-系统找不到指定的文件。

【3】-系统找不到指定的路径。

【4】-系统无法打开文件。

【5】-拒绝访问。

【6】-句柄无效。

【7】-存储控制块被损坏。

【8】-存储空间不足,无法处理此命令。

【9】-存储控制块地址无效。

【10】-环境错误。

【11】-试图加载格式错误的程序。

【12】-访问码无效。

【13】-数据无效。

【14】-存储器不足,无法完成此操作。

本文标签: 函数错误错误代码设置函数调用