HRESULT Values

The following is a list of common return values for functions and methods, and their usual meanings.

Successful results. These values are defined in WinError.h.

S_OK
Successful completion.

S_FALSE
Completed without error, but only partial results were obtained.

If a buffer is not large enough to hold the information that is returned to it, the returned information is often truncated to fit into the buffer and S_FALSE is returned from the method.

Error results. These values are defined in WinError.h.

E_FAIL
The operation could not be performed.

E_INVALIDARG
One of the arguments passed in was invalid.

E_NOINTERFACE
The object searched for was not found.

E_OUTOFMEMORY
A memory allocation attempt failed.

E_UNEXPECTED
The target was not accessible, or the engine was not in a state where the function or method could be processed.

E_NOTIMPL
Not implemented.

HRESULT_FROM_WIN32(ERROR_ACCESS_DENIED)
The operation was denied because the debugger is in Secure Mode.

NT error results. Other error codes, such as STATUS_CONTROL_C_EXIT and STATUS_NO_MORE_ENTRIES, can sometimes occur. These results are passed to the HRESULT_FROM_NT macro that is defined in WinError.h before being returned.

Win32 error results. Other error codes, such as ERROR_READ_FAULT and ERROR_WRITE_FAULT, can sometimes occur. These results are passed to the HRESULT_FROM_WIN32 macro that is defined in WinError.h before being returned.

Requirements

Header

DbgEng.h (include DbgEng.h)