2.1.7 DVTARGETDEVICE

The DVTARGETDEVICE structure specifies information about a device (such as a display or printer device) that renders the presentation data.


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

DriverNameOffSet

DeviceNameOffSet

PortNameOffSet

ExtDevModeOffSet

DriverName (variable)

...

DeviceName (variable)

...

PortName (variable)

...

ExtDevMode (variable)

...

DriverNameOffSet (2 bytes): This MUST be set to the offset, in bytes, from the beginning of the structure to the DriverName field. If this field is set to 0x0000, the DriverName field MUST NOT be present.

DeviceNameOffSet (2 bytes): This MUST be set to the offset, in bytes, from the beginning of the structure to the DeviceName field. If this field is set to 0x0000, the DeviceName field MUST NOT be present.

PortNameOffSet (2 bytes): This MUST be set to the offset, in bytes, from the beginning of the structure to the PortName field. If this field is set to 0x0000, the PortName field MUST NOT be present.

ExtDevModeOffSet (2 bytes): This MUST be set to the offset, in bytes, from the beginning of the structure to the ExtDevMode field. If this field is set to 0x0000, the ExtDevMode field MUST NOT be present. Any gaps between the end of this field and the beginning of the next field MUST be ignored on processing.

DriverName (variable): This MUST be a null-terminated ANSI string that contains a hint on how to display or print presentation data. The creator of this data structure MUST NOT assume that it will be understood during processing. On processing, the hint MAY be ignored. Any gaps between the end of this field and the beginning of the next field MUST be ignored on processing.<3>

DeviceName (variable): This MUST be a null-terminated ANSI string that contains a hint on how to display or print presentation data. The creator of this data structure MUST NOT assume that it will be understood during processing. On processing, the hint MAY be ignored. Any gaps between the end of this field and the beginning of the next field MUST be ignored on processing. This field is optional.<4>

PortName (variable): This MUST be a null-terminated ANSI string that contains any arbitrary value and MUST be ignored on processing. Any gaps between the end of this field and the beginning of the next field MUST be ignored on processing. This field is optional.

ExtDevMode (variable): This MUST contain a DEVMODEA structure (as specified in section 2.1.6). This field is optional.