Exception Codes (NT STATUS Codes) - 0xc-------

Win32 and HRESULT are more known to the average programmer, unless you work a lot with the kernel itself. NTSTATUS is more uncommon as it's on a lower level in which most people usually don't have much insight into. Therefore, unless you're a low level programmer, the audacity of most programmers is that NTSTATUS just doesn't exist.

:beerchug2:
 
I just know "exceptions" from dumps + WER (like Dr. Watson) files.

I also know 0x80000003 - hard assert exception, although I don't see it in the listings! :eek:
 
It is in the listings, but that's just a different name for it, while the official name is STATUS_BREAKPOINT. A hard assert is just another name for a hard breakpoint that's been inserted into the compiled code of the executable that's put there by devs to test their software. They really should not be present in the finished product but there are times when they accidentally are left in there, which is why it's considered a bug when they are. They are undesirable because they force a crash of the application with the intent of breaking into with a debugger, when really the condition - which has already been made aware by the devs (hence inserting the breakpoint) - should be handled cleanly by the application code.

Anyways, thanks mil for these, especially the article on them by Johannes Passing. I knew there was a formula to them but I wasn't certain what it was. Now I'm aware why NTSTATUS codes end in 4, 8 and C, cuz the bit flags represent levels of severity. Course I could've just as easily discovered this in the proper headers in the WDK, but I'm lazy like that. :)
 

Has Sysnative Forums helped you? Please consider donating to help us support the site!

Back
Top