2.2.1.3.10 Client Monitor Extended Data (TS_UD_CS_MONITOR_EX)

The TS_UD_CS_MONITOR_EX packet describes extended attributes of the client-side display monitor layout defined by the Client Monitor Data block (section 2.2.1.3.6). This packet is an Extended Client Data Block and MUST NOT be sent to a server which does not advertise support for Extended Client Data Blocks by using the EXTENDED_CLIENT_DATA_SUPPORTED flag (0x00000001) as described in section 2.2.1.2.1.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

header

flags

monitorAttributeSize

monitorCount

monitorAttributesArray (variable)

...

header (4 bytes): A GCC user data block header, as specified in User Data Header (section 2.2.1.3.1). The User Data Header type field MUST be set to CS_MONITOR_EX (0xC008).

flags (4 bytes): A 32-bit, unsigned integer. This field is unused and reserved for future use. It MUST be set to zero.

monitorAttributeSize (4 bytes): A 32-bit, unsigned integer. The size, in bytes, of a single element in the monitorAttributesArray field. This field MUST be set to 20 bytes, which is the size of the Monitor Attributes structure (section 2.2.1.3.10.1).

monitorCount (4 bytes): A 32-bit, unsigned integer. The number of elements in the monitorAttributesArray field. This value MUST be the same as the monitorCount field specified in the Client Monitor Data block.

monitorAttributesArray (variable): A variable-length array containing a series of Monitor Attribute structures (section 2.2.1.3.10.1) which describe extended attributes of each display monitor specified in the Client Monitor Data block. The number of Monitor Attribute structures is specified by the monitorCount field.