The Search COM interfaces provide a set of custom HRESULT values that provide programmers or scripters with detailed information about the state of the system when either an exception occurs, or a status-related method invocation is used. Each of the custom HRESULT values supported by the Search COM interfaces is listed below. In all cases, the standard HRESULT FACILITY code portion of the value will be set to type FACILITY_ITF = 0x4. This identifies the result as having a specific meaning strictly in relation to the interface method or property that was executing when the HRESULT code was generated at runtime. The full HRESULT values will always therefore be prefixed with the first two bytes either 0x(8004)(0000) or 0x(0004)(0000) in hexadecimal format, indicating an exceptional situation has occurred, or extended "success" information is present, respectively. The remaining 2 bytes of information identify the specifics of the value as they relate to the Search interfaces and objects. The first of the two bytes breaks down the interface relative error into one of the following categories:
The final byte uniquely identifies the error as a subset of one of the categories above.
Examples of use are given to demonstrate common procedures when working with custom HRESULT values.
A C header file accompanies the SDK that defines the error names and hexadecimal values listed here if direct use is desired.