2.2.2 Message Headers
All Windows Search Protocol messages have a 16-byte header.
The following table shows the Windows Search Protocol message header format.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
_msg |
|||||||||||||||||||||||||||||||
_status |
|||||||||||||||||||||||||||||||
_ulChecksum |
|||||||||||||||||||||||||||||||
_ulReserved2 |
_msg (4 bytes): A 32-bit integer that identifies the type of message following the header. The following table lists the Windows Search Protocol messages and the integer values specified for each message. As shown in the table, some values identify two messages. In those instances, the message following the header can be identified by the direction of the message flow. If the direction is client to server, the message with "In" appended to the message name is indicated. If the direction is server to client, the message with "Out" appended to the message name is indicated.
-
Value
Meaning
0x000000C8
0x000000C9
0x000000CA
0x000000CB
0x000000CC
0x000000CD
0x000000CE
0x000000CF
0x000000D0
0x000000D1
0x000000D2
0x000000D7
0x000000D9
0x000000E4
0x000000E7
0x000000E8
0x000000EC
CPMSetCatStateIn (not supported)
0x000000F1
0x000000F2
0x000000F3
0x000000F4
_status (4 bytes): An HRESULT, indicating the status of the requested operation. The client MUST initialize this value to 0x00000000. The server then changes it as the status of the requested operation changes.
_ulChecksum (4 bytes): The _ulChecksum MUST be calculated as specified in section 3.2.4 for the following messages:
CPMConnectIn
CPMCreateQueryIn
CPMSetBindingsIn
CPMGetRowsIn
CPMFetchValueIn
-
Note For all other messages, _ulChecksum MUST be set to 0x00000000. A client MUST ignore the _ulChecksum field.
_ulReserved2 (4 bytes): MUST be ignored by the receiver.
-
Note This field MUST be set to 0x00000000 except for the CPMGetRowsIn message, where it MUST hold the high 32-bits part of a 64-bit offset if 64-bit offsets are being used (see section 2.2.3.12 for details).