ntstatus
Windows NTSTATUS Codes
32-bit status and error codes returned by the Windows kernel, native API (ntdll.dll), and kernel-mode drivers. Distinct from Win32 error codes and HRESULTs, though both are commonly derived from an NTSTATUS value; the high bits encode severity, and the top two bits of a failure code are typically 0xC.
40 codes
references learn.microsoft.com/en-us/openspecs/windows_protocols/ms-erref/596a1078-e883-4972-9bbc-49e60bebca55learn.microsoft.com/en-us/windows-hardware/drivers/kernel/using-ntstatus-values
· All codes 40 codes
- STATUS_ACCESS_DENIED Access denied A process requested access to an object but was not granted the access rights it asked for, per the object's security descriptor.
- STATUS_ACCESS_VIOLATION Access violation The instruction referenced memory that could not be read from, written to, or executed, typically because the address was unmapped or protected. This is the kernel-mode status underlying most user-mode segmentation faults on Windows.
- STATUS_ACCOUNT_DISABLED Account disabled The referenced user account is currently disabled and cannot be used to log on.
- STATUS_ARRAY_BOUNDS_EXCEEDED Array bounds exceeded A bounds-checked array access, typically a BOUND instruction, was performed with an index outside the array's declared limits.
- STATUS_BREAKPOINT Breakpoint A breakpoint instruction (such as INT 3) was executed, raised as a structured exception so a debugger can intercept it. This is an informational, not a failure, severity code.
- STATUS_BUFFER_TOO_SMALL Buffer too small The buffer supplied by the caller is too small to hold the result; no data is written to it. Callers typically retry with a buffer sized from the length the call reports back.
- STATUS_CANCELLED Cancelled The I/O request was cancelled, either by the requesting thread, by CancelIo, or as part of handle or process cleanup.
- STATUS_CONTROL_C_EXIT Application terminated by Ctrl+C The application terminated as a result of a Ctrl+C signal delivered to its console process group.
- STATUS_DEVICE_NOT_READY Device not ready The device is not ready for use, such as a removable drive whose door is open or that has no media inserted.
- STATUS_DISK_FULL Disk full An operation failed because the volume is full. On a thinly provisioned volume this indicates the backing physical storage has been exhausted.
- STATUS_DLL_INIT_FAILED DLL initialization failed Initialization of a dynamic-link library's DllMain failed, causing the process that loaded it to terminate abnormally.
- STATUS_DLL_NOT_FOUND DLL not found The program cannot start because a required dynamic-link library is missing from the system.
- STATUS_END_OF_FILE End of file The end-of-file marker was reached during a read; no valid data exists in the file beyond this point.
- STATUS_ENTRYPOINT_NOT_FOUND Entry point not found The procedure entry point named in an import could not be located in the specified dynamic-link library.
- STATUS_FILE_IS_A_DIRECTORY File is a directory The target of the operation is a directory, but the caller specified that the target must be anything other than a directory.
- STATUS_ILLEGAL_INSTRUCTION Illegal instruction The processor attempted to execute an instruction whose opcode is invalid or not recognised, raised as a structured exception.
- STATUS_IN_PAGE_ERROR In-page I/O error The memory manager could not bring the required page into memory because the paging I/O that would have satisfied the page fault failed.
- STATUS_INSUFFICIENT_RESOURCES Insufficient resources Insufficient system resources, such as non-paged pool, handles, or worker threads, exist to complete the requested API call.
- STATUS_INTEGER_DIVIDE_BY_ZERO Integer division by zero An integer division instruction was executed with a divisor of zero, raised as a structured exception.
- STATUS_INVALID_DEVICE_REQUEST Invalid device request The specified I/O control code or request is not a valid operation for the target device object.
- STATUS_INVALID_HANDLE Invalid handle An invalid HANDLE was specified to a system call, either because it was never valid or because it has already been closed.
- STATUS_INVALID_PARAMETER Invalid parameter An invalid parameter was passed to a native API service or driver routine. This is the NTSTATUS analogue of ERROR_INVALID_PARAMETER.
- STATUS_LOGON_FAILURE Logon failure The attempted logon is invalid, due to either a bad username or incorrect authentication information supplied.
- STATUS_NO_MEMORY Insufficient virtual memory Not enough virtual memory or paging file quota is available to complete the requested operation, such as an allocation or a pool request.
- STATUS_NO_SUCH_DEVICE No such device A device that does not exist, or is no longer present, was specified in the request.
- STATUS_NO_SUCH_FILE No such file The specified file does not exist. Returned by the object manager and file systems when a path component resolves to nothing.
- STATUS_NOT_IMPLEMENTED Not implemented The requested operation is not implemented. Returned by a driver or subsystem when a dispatch routine or API has no support for the given request.
- STATUS_NOT_SUPPORTED Not supported The requested operation is not supported by the device, file system, or component that received it.
- STATUS_OBJECT_NAME_COLLISION Object name collision An object with the given name already exists, and the request did not permit opening the existing object in its place.
- STATUS_OBJECT_NAME_INVALID Object name invalid The object name supplied to the object manager is syntactically invalid, for example because it contains characters that are not permitted in a path.
- STATUS_OBJECT_NAME_NOT_FOUND Object name not found The named object could not be found in the object manager namespace. This is the native-API status underlying the common ERROR_FILE_NOT_FOUND and ERROR_PATH_NOT_FOUND Win32 errors.
- STATUS_OBJECT_PATH_NOT_FOUND Object path not found The specified path does not exist in the object manager namespace, because one of its intermediate directory components could not be located.
- STATUS_PENDING Pending The requested operation is still in progress and has not yet completed. Commonly returned by asynchronous I/O requests before the corresponding I/O completion.
- STATUS_PRIVILEGE_NOT_HELD Privilege not held The operation requires a privilege that is not held by the calling client's access token, for example SeDebugPrivilege or SeBackupPrivilege.
- STATUS_SHARING_VIOLATION Sharing violation A file could not be opened because the requested access or share mode conflicts with the access and share flags of an existing open handle to the same file.
- STATUS_STACK_OVERFLOW Stack overflow A new guard page could not be created for the thread's stack because the stack has been exhausted.
- STATUS_SUCCESS Success The operation completed successfully. This is the canonical success value returned by native API and driver routines.
- STATUS_TIMEOUT Timeout A wait operation completed because the specified timeout period elapsed rather than because the object being waited on was signalled.
- STATUS_UNSUCCESSFUL Unsuccessful The requested operation was unsuccessful. This generic failure code is used when no more specific NTSTATUS value applies.
- STATUS_WRONG_PASSWORD Wrong password When changing a password, the value supplied as the current password does not match the account's actual current password.