All Win32 error codes MUST be in the range 0x0000 to 0xFFFF, although Win32 error codes can be used both in 16-bit fields (such as within the HRESULT type specified in section 2.1) as well as 32-bit fields. Most values also have a default message defined, which can be used to map the value to a human-readable text message; when this is done, the Win32 error code is also known as a message identifier.
Vendors SHOULD reuse the values in the following table with their indicated meanings. Choosing any other value runs the risk of a collision in the future.<3>
This document provides the common usage details of the Win32 error codes; individual protocol specifications may provide expanded or modified definitions.
Note In the following descriptions, a percentage sign followed by one or more alphanumeric characters (for example, "%1" or "%hs") indicates a variable that will be replaced by text at the time the value is returned.
Win32 error codes
The operation completed successfully.
The operation completed successfully.
The system cannot find the file specified.
The system cannot find the path specified.
The system cannot open the file.
Access is denied.
The handle is invalid.
The storage control blocks were destroyed.
Not enough storage is available to process this command.
The storage control block address is invalid.
The environment is incorrect.
An attempt was made to load a program with an incorrect format.
The access code is invalid.
The data is invalid.
Not enough storage is available to complete this operation.
The system cannot find the drive specified.
The directory cannot be removed.
The system cannot move the file to a different disk drive.
There are no more files.
The media is write-protected.
The system cannot find the device specified.
The device is not ready.
The device does not recognize the command.
Data error (cyclic redundancy check).
The program issued a command but the command length is incorrect.
The drive cannot locate a specific area or track on the disk.
The specified disk cannot be accessed.
The drive cannot find the sector requested.
The printer is out of paper.
The system cannot write to the specified device.
The system cannot read from the specified device.
A device attached to the system is not functioning.
The process cannot access the file because it is being used by another process.
The process cannot access the file because another process has locked a portion of the file.
The wrong disk is in the drive. Insert %2 (Volume Serial Number: %3) into drive %1.
Too many files opened for sharing.
Reached the end of the file.
The disk is full.
The request is not supported.
Windows cannot find the network path. Verify that the network path is correct and the destination computer is not busy or turned off. If Windows still cannot find the network path, contact your network administrator.
You were not connected because a duplicate name exists on the network. Go to System in Control Panel to change the computer name, and then try again.
The network path was not found.
The network is busy.
The specified network resource or device is no longer available.
The network BIOS command limit has been reached.
A network adapter hardware error occurred.
The specified server cannot perform the requested operation.
An unexpected network error occurred.
The remote adapter is not compatible.
The print queue is full.
Space to store the file waiting to be printed is not available on the server.
Your file waiting to be printed was deleted.
The specified network name is no longer available.
Network access is denied.
The network resource type is not correct.
The network name cannot be found.
The name limit for the local computer network adapter card was exceeded.
The network BIOS session limit was exceeded.
The remote server has been paused or is in the process of being started.
No more connections can be made to this remote computer at this time because the computer has accepted the maximum number of connections.
The specified printer or disk device has been paused.
The file exists.
The directory or file cannot be created.
Fail on INT 24.
Storage to process this request is not available.
The local device name is already in use.
The specified network password is not correct.
The parameter is incorrect.
A write fault occurred on the network.
The system cannot start another process at this time.
Cannot create another system semaphore.
The exclusive semaphore is owned by another process.
The semaphore is set and cannot be closed.
The semaphore cannot be set again.
Cannot request exclusive semaphores at interrupt time.
The previous ownership of this semaphore has ended.
Insert the disk for drive %1.
The program stopped because an alternate disk was not inserted.
The disk is in use or locked by another process.
The pipe has been ended.
The system cannot open the device or file specified.
The file name is too long.
There is not enough space on the disk.
No more internal file identifiers are available.
The target internal file identifier is incorrect.
The Input Output Control (IOCTL) call made by the application program is not correct.
The verify-on-write switch parameter value is not correct.
The system does not support the command requested.
This function is not supported on this system.
The semaphore time-out period has expired.
The data area passed to a system call is too small.
The file name, directory name, or volume label syntax is incorrect.
The system call level is not correct.
The disk has no volume label.
The specified module could not be found.
The specified procedure could not be found.
There are no child processes to wait for.
The %1 application cannot be run in Win32 mode.
Attempt to use a file handle to an open disk partition for an operation other than raw disk I/O.
An attempt was made to move the file pointer before the beginning of the file.
The file pointer cannot be set on the specified device or file.
A JOIN or SUBST command cannot be used for a drive that contains previously joined drives.