每个winapi函数的GetLastError()错误代码列表

时间:2017-07-23 11:12:32

标签: c winapi getlasterror

是否有一个列表提供由给定 winapi函数通过GetLastError()返回的错误代码?是否有提供此类文件的官方或非官方资源?

例如MSDN上的winsock函数文档页面提供了可能的WSAGetLastError()代码表,而其他winapi函数没有针对给定函数的每个可能错误都有这样的列表,这是这个问题中解决的确切问题,我在问用于每个winapi函数的类似文档。

要求:

  • List of winapi error codes
  • 有关实现错误处理的建议或某些处理错误处理的库
  • 有关使用FormatMessage()和类似
  • 的建议
编辑:我知道this问题,它处理一个特殊的函数(CreateFile),这似乎是例外,因为第三方文件系统可以提供自己的错误代码,即使大多数函数属于这种情况,仍然应该有最常见/标准的错误代码

提前致谢

2 个答案:

答案 0 :(得分:3)

没有这样的清单。事实上,没有一个,因为有API调用,甚至无法控制他们可以返回的整个错误代码集(例如,考虑EnumWindows,其中用户提供的代码设置错误代码)。

某些API调用提供了可以返回的错误代码的部分列表。在这些情况下,它是文档化合同的一部分,您的代码可以编写为这些错误代码的帐户。请记住,这些列表通常永远不会完整,因此您的代码也需要准备好处理其他错误代码。

简而言之,错误处理需要根据具体情况实施。有共同的模式,但没有单一的全部实现。

答案 1 :(得分:2)

没有这样的清单。即使特定功能的文档列出了可以返回的错误代码,该列表也不是详尽无遗的。您始终需要满足返回的其他代码的可能性。