HRESULT is a standard system of 32-bit error/result codes associated with Microsoft Windows and OS/2, and especially the COM subsystem.
An HRESULT can be represented as either a signed or an unsigned integer. In the case of a signed integer, negative numbers are used for errors, and nonnegative numbers (usually 0) for success.
An HRESULT is distinct from a Windows System Error Code, though the error codes do not overlap. However, HRESULT success codes may conflict with System Error Codes.