MXDC_ESCAPE_HEADER_T 結構

MXDC_ESCAPE_HEADER_T結構會保存對ExtEscape的呼叫作業程式碼,並將MXDC_ESCAPE作為nEscape參數。 它也提供輸入和輸出緩衝區的大小。

語法

typedef struct tagMxdcEscapeHeader {
  ULONG cbInput;
  ULONG cbOutput;
  ULONG opCode;
} MXDC_ESCAPE_HEADER_T, *P_MXDC_ESCAPE_HEADER_T;

成員

cbInput

將傳遞至ExtEscape函式之 lpszOutData參數的輸入緩衝區大小。

cbOutput

輸出緩衝區的大小。 這個值與ExtEscape式的 cbOutput參數相同。

opCode

指示 MXDC 執行哪些動作的程式碼常數。

作業程式碼 描述
MXDCOP_GET_FILENAME 傳回ExtEscape函式的lpszOutData參數中,輸出檔的完整路徑為零終止字串或該字串的大小。 請參閱<備註>。
MXDCOP_PRINTTICKET_FIXED_DOC_SEQ 建立列印票證與 XPS 固定檔順序的關聯。
MXDCOP_PRINTTICKET_FIXED_DOC 將列印票證與 XPS 檔建立關聯。
MXDCOP_PRINTTICKET_FIXED_PAGE 建立列印票證與 XPS 頁面的關聯。
MXDCOP_SET_S0PAGE 將目前頁面的 XPS 標記傳送至輸出。
MXDCOP_SET_S0PAGE_RESOURCE 將頁面上的資源,例如影像或字型傳送至輸出。
MXDCOP_SET_XPSPASSTHRU_MODE 將 MXDC 放入傳遞狀態,讓應用程式可以直接將 XPS 寫入輸出檔案,而不需要 MXDC 進行任何處理。 您可以透過這種方式撰寫整個檔或甚至檔順序。

備註

在呼叫MXDC_ESCAPE之前,_applications應該先使用GETTECHNOLOGY逸出呼叫ExtEscape來驗證驅動程式是否為 MXDC。 如果驅動程式是 MXDC,函式會傳回零終止字串 「 http://schemas.microsoft.com/xps/2005/06" ;。

這個結構一律會在其lpszInData參數中傳遞至ExtEscape函式的資料開頭。

當 opCode MXDCOP_GET_FILENAME時:

  • ExtEscape函式的lpszInData參數只包含MXDC_ESCAPE_HEADER_T結構。
  • 藉由呼叫 ExtEscape 兩次來取得輸出檔名。
    1. 第一次將 4 傳遞至ExtEscapecbOutput參數。 將 lpszOutData 參數設定為指向任何配置的 4 個位元組記憶體。 ExtEscapelpszOutData參數中會傳回完整檔案路徑的大小。
    2. 然後再次呼叫 函式。 這次將 cbOutputcbInput 設定為 4+ DataSize。 完整檔案路徑將會在 MxdcGetFileNameData 結構中傳回。

當 opCode MXDCOP_PRINTTICKET_FIXED_DOC_SEQ或MXDCOP_PRINTTICKET_FIXED_DOC時:

當 opCode MXDCOP_PRINTTICKET_FIXED_PAGE時:

當 opCode MXDCOP_SET_S0PAGE時:

  • ExtEscape函式的lpszInData參數包含MXDC_ESCAPE_HEADER_T結構和串連至MxdcS0PagePassthroughEscape結構的MxdcS0PageData結構。
  • ExtEscape 的呼叫必須在呼叫 StartPage對 EndPage的呼叫之間發生。
  • 呼叫的應用程式負責驗證 XML。
  • 如果您使用MXDCOP_SET_S0PAGE_RESOURCE呼叫 ExtEscape 做為頁面上每個資源的 opCode ,則串流耗用量會更有效率,然後再使用 MXDCOP_SET_S0PAGE 呼叫。

當 opCode MXDCOP_SET_S0PAGE_RESOURCE時:

當 opCode MXDCOP_SET_XPSPASSTHRU_MODE時:

  • ExtEscape函式的lpszInData參數只包含MXDC_ESCAPE_HEADER_T結構。
  • 呼叫 StartDoc之前必須發生此呼叫。

規格需求

需求
最低支援的用戶端
Windows Vista [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2008 [僅限傳統型應用程式]
標頭
Mxdc.h

另請參閱

列印

列印多工緩衝處理器 API 結構

GDI 印表機逸出函式

ExtEscape

MXDC_ESCAPE