2.2.7.56 MILCMD_TARGET_CAPTUREBITS

The MILCMD_TARGET_CAPTUREBITS packet enqueues a capture request to a rendering target. The client MUST respond with a MILMSG_CAPTUREBITSREPLY notification containing the pixels representing the rasterization of the specified area with any modifications specified by the MILCMD_VISUALGROUP, MILCMD_VISUAL_ADDRENDERPARAMETER or MILCMD_WINDOWNODE_PROTECTCONTENT packets.


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

messageSize

controlCode

targetResource

x

y

width

height

dxgiFormat

unused

...

messageSize (4 bytes): A 32-bit unsigned integer. The size of this message in bytes. The value of this field MUST be set to 0x00000028.

controlCode (4 bytes): A 32-bit unsigned integer containing the control code for this message. The value of this field MUST be equal to 0x00000049.

targetResource (4 bytes): A 32-bit unsigned integer. The value of this field MUST be set to a valid resource handle referencing a resource of type TYPE_HWNDRENDERTARGET, TYPE_DESKTOPRENDERTARGET or TYPE_METABITMAPRENDERTARGET. This handle identifies the resource that is the target for this message.

x (4 bytes): A 32-bit unsigned integer. The X-coordinate of the top-left corner of the requested capture area.

y (4 bytes): A 32-bit unsigned integer. The Y-coordinate of the top-left corner of the requested capture area.

width (4 bytes): A 32-bit unsigned integer. The width of the requested capture area in pixels.

height (4 bytes): A 32-bit unsigned integer. The height of the requested capture area in pixels.

dxgiFormat (4 bytes): A DXGI_FORMAT enumeration. The pixel format to be used by the composition engine when capturing the specified area.

unused (8 bytes): A 64-bit unsigned integer. This field is unused and MUST be set to zero.