Я заметил, что большинство кодов ошибок Windows имеют одну из двух форм:
- Стандартные системные коды ошибок , например, 0x05 - Доступ запрещен.
- Коды ошибок в форме
0xC000xxxx, ссылки на которые я не могу найти.
Сначала я подумал, что последние коды ошибок были просто системными кодами ошибок, которые 0xC0000000по какой-то причине были побитовыми ИЛИ , но это, похоже, не так; они не соответствуют характеру ошибки, если отображены таким образом.
Кажется, что все ссылки на такие ошибки в Google связаны со сбоями приложений, но имена ошибок не приводятся.
Похоже, что они не являются специфичными для приложения, поскольку некоторые Nt*API внутри ntdll.dll возвращают их, например, NtCreateDirectoryObjectвозвращает 0xC0000022при вызове с неверными параметрами.
В чем разница между двумя типами кода ошибки? Microsoft официально распознает их как стандартные коды ошибок? Есть ли для них справочная страница?