4.3.8 Draw GDI+ Cache End
The following is an annotated dump of a Draw GDI+ Cache End (section 2.2.2.2.1.3.6.4) Alternate Secondary Drawing Order.
-
00000000 2a 00 04 00 00 00 1c 02 1c 22 00 00 ff ff ff ff *........"...... 00000010 ff ff ff ff ff ff ff ff ff ff ff 4f ff ff ff ff ...........O.... 00000020 ff ff ff fc 3f ff ff ff ff ff ff 00 00 00 ff ff ....?........... 00000030 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 6f ...............o 00000040 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 00 ................ 00000050 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................ 00000060 ff ff ff 6f ff ff ff ff ff ff ff ff ff ff ff ff ...o............ 00000070 ff ff ff 00 00 00 ff ff ff ff ff ff ff ff ff ff ................ 00000080 ff ff ff ff ff ff ff 6f ff ff ff ff ff ff ff ff .......o........ 00000090 ff ff ff ff ff ff ff 00 00 00 ff ff ff ff ff ff ................ 000000a0 ff ff ff ff ff ff ff ff ff ff fe 6f ff ff ff ff ...........o.... 000000b0 ff ff ff ff ff ff ff ff ff ff ff 00 00 00 ff ff ................ 000000c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff fe 2f .............../ 000000d0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 00 ................ 000000e0 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................ 000000f0 ff ff ff 6f ff ff ff ff ff ff ff ff ff ff ff ff ...o............ 00000100 ff ff ff 00 00 00 ff ff ff ff ff ff ff ff ff ff ................ 00000110 ff ff ff ff ff ff ff 2f ff ff ff ff ff ff ff ff ......./........ 00000120 ff ff ff ff ff ff ff 00 00 00 ff ff ff ff ff ff ................ 00000130 ff ff ff ff ff ff ff ff ff ff fe 2f ff ff ff ff .........../.... 00000140 ff ff ff ff ff ff ff ff ff ff ff 00 00 00 ff ff ................ 00000150 ff ff ff ff ff ff ff ff ff ff ff ff ff ff fe 2f .............../ 00000160 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 00 ................ 00000170 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................ 00000180 ff ff fe 0f ff ff ff ff ff ff ff ff ff ff ff ff ................ 00000190 ff ff ff 00 00 00 ff ff ff ff ff ff ff ff ff ff ................ 000001a0 ff ff ff ff ff ff fe 0f ff ff ff ff ff ff ff ff ................ 000001b0 ff ff ff ff ff ff ff 00 00 00 ff ff ff ff ff ff ................ 000001c0 ff ff ff ff ff ff ff ff ff ff fe 4f ff ff ff ff ...........O.... 000001d0 ff ff ff ff ff ff ff ff ff ff ff 00 00 00 ff ff ................ 000001e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................ 000001f0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 00 ................ 00000200 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................ 00000210 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................ 00000220 ff ff ff 00 00 00 00 00 ........ 2a -> ALTSEC_DRAWING_ORDER_HEADER::controlFlags = 0x2a class = TS_SECONDARY (0x02) orderType = TS_ALTSEC_GDIP_CACHE_END (0x0a) 00 -> DRAW_GDIPLUS_CACHE_END_ORDER::Flags = 0x00 04 00 -> DRAW_GDIPLUS_CACHE_END_ORDER::CacheType = GDIP_CACHE_OBJECT_IMAGE (0x0004) 00 00 -> DRAW_GDIPLUS_CACHE_END_ORDER::CacheIndex = 0x0000 1c 02 -> DRAW_GDIPLUS_CACHE_END_ORDER::cbSize = 0x021c = 540 bytes 1c 22 00 00 -> DRAW_GDIPLUS_CACHE_END_ORDER::cbTotalSize = 0x0000221c = 8732 bytes The next 540 bytes are the EMF+ Records (DRAW_GDIPLUS_CACHE_END_ORDER::emfRecords). These records can be parsed as specified in [MS-EMFPLUS] section 2.3.