This is a good reference for writing custom error messages in your apps.
Complete List is here:
0 (0x0) The operation completed successfully.
1 (0x1) Incorrect function.
2 (0x2) The system cannot find the file specified.
3 (0x3) The system cannot find the path specified.
4 (0x4) The system cannot open the file.
5 (0x5) Access is denied.
6 (0x6) The handle is invalid.
7 (0x7) The storage control blocks were destroyed.
8 (0x8) Not enough storage is available to process this command.
9 (0x9) The storage control block address is invalid.
10 (0xA) The environment is incorrect.
11 (0xB) An attempt was made to load a program with an incorrect format.
12 (0xC) The access code is invalid.
13 (0xD) The data is invalid.
14 (0xE) Not enough storage is available to complete this operation.
15250 (0x3B92) The requested system device cannot be identified due to multiple indistinguishable devices potentially matching the identification criteria.
15299 (0x3BC3) The requested system device cannot be found.
15300 (0x3BC4) Hash generation for the specified version and hash type is not enabled on server.
15301 (0x3BC5) The hash requests is not present or not up to date with the current file contents.