3.2.1 EMFSPOOL Header Example

This section provides an example of a Header record (section 2.2.2).

 00000000:00 00 01 00 54 00 00 00 10 00 00 00 46 00 00 00 
 00000010:4d 00 69 00 63 00 72 00 6F 00 73 00 6f 00 66 00 
 00000020:74 00 20 00 57 00 6F 00 72 00 64 00 20 00 2D 00 
 00000030:20 00 44 00 6f 00 63 00 75 00 6d 00 65 00 6E 00 
 00000040:74 00 31 00 00 00 4E 00 65 00 30 00 32 00 3A 00 
 00000050:00 00 00 00


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

dwVersion (0x00010000)

cjSize (0x00000054)

dpszDocName (0x00000010)

dpszOutput (0x00000046)

extraDataDocName ("Microsoft Work - Document 1")

extraDataOutputDevice ("Ne02:")

dwVersion (4 bytes): 0x00010000 specifies the version of EMFSPOOL.

cjSize (4 bytes): 0x00000054 specifies the size, in bytes, of the header record, including any extra data attached.

dpszDocName (4 bytes): 0x00000010 specifies the offset of the document name from the start of the record (the dwVersion field). The document name is stored as a NULL-terminated Unicode string [UNICODE], in the extraData area. If the value is 0x00000000, no document name is specified.

dpszOutput (4 bytes): 0x00000046 specifies the offset of the output device name from the start of the record (dwVersion field). The output device name is stored as a NULL-terminated Unicode string in the extraData area. If the value is 0, no output device name is specified.

extraDataDocName: Variable-size storage area for document name.

extraDataOutputDevice: Variable-size storage area for output device name. Padding bytes will be added following this storage area to align the entire header record on a 4-byte boundary.