DVTARGETDEVICE 結構 (objidl.h)

指定要撰寫資料的目標裝置相關資訊。 DVTARGETDEVICE包含 Windows 目標裝置的足夠資訊,因此可以使用CreateDC函式建立裝置內容 (HDC) 控制碼。

語法

typedef struct tagDVTARGETDEVICE {
  DWORD tdSize;
  WORD  tdDriverNameOffset;
  WORD  tdDeviceNameOffset;
  WORD  tdPortNameOffset;
  WORD  tdExtDevmodeOffset;
  BYTE  tdData[1];
} DVTARGETDEVICE;

成員

tdSize

DVTARGETDEVICE結構的大小,以位元組為單位。 包含初始大小,以便更輕鬆地複製結構。

tdDriverNameOffset

從 結構的開頭到設備磁碟機名稱的位移,以位元組為單位,這會儲存為 tdData 緩衝區中以 Null 終止的字串。

tdDeviceNameOffset

從 結構的開頭到裝置名稱的位移,以位元組為單位,儲存為 tdData 緩衝區中的 Null 終止字串。 這個值可以是零,表示沒有裝置名稱。

tdPortNameOffset

結構開頭到埠名稱的位移,以位元組為單位,儲存為 tdData 緩衝區中的 Null 終止字串。 這個值可以是零,表示沒有埠名稱。

tdExtDevmodeOffset

從 結構的開頭到呼叫DocumentProperties所擷取之 DEVMODE結構的位移,以位元組為單位。

tdData[1]

位元組陣列,包含目標裝置的資料。 對於位移值為零) 的名稱,不需要在 tdData (中包含空字串。

備註

某些 OLE 1 用戶端應用程式在DVTARGETDEVICE的 DEVMODE結構中配置了太少的位元組,以錯誤建構目標裝置。 它們通常只會提供DEVMODEdmSize成員中的位元組數目。 要配置的位元組數目應該是dmSize + dmDriverExtra的總和。 對具有不正確目標裝置的 CreateDC 函式進行呼叫時,印表機驅動程式會嘗試存取額外的位元組,而且可能發生無法預期的結果。 為了協助防止當機並讓其他位元組可供使用,OLE 填補從 OLE 1 目標裝置建立的 OLE 2 目標裝置大小。

需求

   
最低支援的用戶端 Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows 2000 Server [傳統型應用程式 |UWP 應用程式]
標頭 objidl.h

另請參閱

FORMATETC

IEnumFORMATETC

IViewObject

OleConvertOLESTREAMToIStorage