2.2.9.2.1 Set Surface Bits Command (TS_SURFCMD_SET_SURF_BITS)

The Set Surface Bits Command is used to transport encoded bitmap data destined for a rectangular region of the primary drawing surface from an RDP server to an RDP client.


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

cmdType

destLeft

destTop

destRight

destBottom

bitmapData (variable)

...

cmdType (2 bytes): A 16-bit, unsigned integer. Surface Command type. This field MUST be set to CMDTYPE_SET_SURFACE_BITS (0x0001).

destLeft (2 bytes): A 16-bit, unsigned integer. Left bound of the destination rectangle that will contain the decoded bitmap data.

destTop (2 bytes): A 16-bit, unsigned integer. Top bound of the destination rectangle that will contain the decoded bitmap data.

destRight (2 bytes): A 16-bit, unsigned integer. Exclusive right bound of the destination rectangle that will contain the decoded bitmap data. This field SHOULD be ignored, as the width of the encoded bitmap image is specified in the Extended Bitmap Data (section 2.2.9.2.1.1) present in the variable-length bitmapData field.

destBottom (2 bytes): A 16-bit, unsigned integer. Exclusive bottom bound of the destination rectangle that will contain the decoded bitmap data. This field SHOULD be ignored, as the height of the encoded bitmap image is specified in the Extended Bitmap Data present in the variable-length bitmapData field.

bitmapData (variable): An Extended Bitmap Data structure that contains an encoded bitmap image.