为什么许多 Windows 错误代码以 0xC000xxxx 开头?他们有参考吗?

Pol*_*ial 11 windows

我注意到大多数 Windows 错误代码都采用以下两种形式之一:

  • 标准系统错误代码,例如 0x05 是拒绝访问。
  • 表单中的错误代码0xC000xxxx,我找不到任何参考。

我首先认为后者的错误代码只是0xC0000000出于某种原因进行了按位或运算的系统错误代码,但似乎并非如此;如果以这种方式映射,它们与故障的性质不匹配。

Google 上对此类错误的所有引用似乎都与应用程序崩溃有关,但没有提供错误名称。

它们似乎也不是特定于应用程序的,因为Nt*ntdll.dll 中的一些API 会返回它们,例如在使用错误参数调用时NtCreateDirectoryObject返回0xC0000022

这两种错误代码有什么区别?Microsoft 是否正式将它们识别为标准错误代码?有他们的参考页面吗?

Der*_*ler 7

NTSTATUS values文档中有大量错误值列表。

例如,0xC0000022代表STATUS_ACCESS_DENIED,这是一个非常常见的返回值。

有点不相关,但还有一个错误检查代码列表。这些代码通常在收到 BSOD 时显示。


归档时间:

查看次数:

450 次

最近记录:

12 年,3 月 前