МКСДК _ T-структура Escape- _ заголовка _

Структура мксдк _ Escape _ -заголовка _ T содержит код операции для вызова екстескапе с _ escape-мксдк в качестве параметра нескапе . Он также предоставляет размеры входных и выходных буферов.

Синтаксис

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

Члены

кбинпут

Размер входного буфера, который будет передан в параметр лпсзаутдата функции екстескапе .

кбаутпут

Размер выходного буфера. Это то же значение, что и параметр кбаутпут функции екстескапе .

транслируют

Константа кода, которая сообщает МКСДК, что делать.

Код операции Описание
МКСДКОП _ получить _ имя файла Возвращает, в параметре лпсзаутдата функции екстескапе либо полный путь к выходному файлу в виде строки, завершающейся нулем, либо размер этой строки. См. заметки.
_ _ фиксированная _ последовательность документов мксдкоп PRINTTICKET _ Связывает билет на печать с фиксированной последовательностью документов XPS.
_ _ фиксированный документ мксдкоп PRINTTICKET _ Связывает билет печати с документом XPS.
_ _ фиксированная страница мксдкоп PRINTTICKET _ Связывает билет на печать со страницей XPS.
МКСДКОП _ Set _ S0PAGE Отправляет в выходные данные разметку XPS текущей страницы.
МКСДКОП _ задать _ S0PAGE _ ресурс Отправляет на выход на страницу ресурс, например изображение или шрифт.
МКСДКОП _ Set _ кспспасссру _ mode Помещает МКСДК в сквозное состояние, позволяя приложению записывать XPS непосредственно в выходной файл без какой-либо обработки МКСДК. Таким образом может быть написан весь документ или даже последовательность документов.

Remarks

Перед вызовом _ escape-последовательности мксдк _ приложения должны сначала проверить, является ли драйвер Мксдк, вызвав ЕКСТЕСКАПЕ с помощью escape- технологии . Если драйвер является МКСДК, функция возвращает строку "", завершающуюся нулем http://schemas.microsoft.com/xps/2005/06 .

Эта структура всегда находится в начале данных, передаваемых функции екстескапе в его параметре лпсзиндата .

Когда код операции -мксдкоп _ получает _ имя файла:

  • Параметр лпсзиндата функции екстескапе состоит только из структуры escape-заголовка мксдк _ _ _ T .
  • Получите выходное имя файла, вызвав екстескапе дважды.
    1. В первый раз передайте 4 параметру Кбаутпут екстескапе. Задайте параметр лпсзаутдата , чтобы он указывал на любой выделенный 4 байта памяти. Размер полного пути к файлу будет возвращен в параметре лпсзаутдата объекта екстескапе.
    2. Затем вызовите функцию еще раз. На этот раз оба параметра кбаутпут и кбинпут заданы как 4 + DataSize. Полный путь к файлу будет возвращен в структуре мксдкжетфиленамедата .

Если код операции — мксдкоп _ PrintTicket _ фиксированный _ документ _ Seq или мксдкоп _ PrintTicket _ фиксированный _ документ:

Если код операции — _ это _ фиксированная страница мксдкоп PRINTTICKET _ :

Когда код операции — мксдкоп _ Set _ S0PAGE:

  • Параметр лпсзиндата функции екстескапе состоит из структуры escape-заголовка мксдк _ _ _ T и структуры MxdcS0PageData , Объединенной в структуру MxdcS0PagePassthroughEscape .
  • Вызов екстескапе должен осуществляться между вызовом StartPage и вызовом EndPage.
  • Вызывающее приложение отвечает за проверку XML.
  • Потоковая передача данных более эффективна, если вы вызываете екстескапе с мксдкоп _ Set _ S0PAGE _ Resource как код операции для каждого ресурса на странице, прежде чем вызывать его с мксдкоп _ Set _ S0PAGE.

Если код операции — мксдкоп _ Set _ S0PAGE _ Resource:

  • Параметр лпсзиндата функции екстескапе состоит из структуры escape-заголовка мксдк _ _ _ T и структуры MxdcXpsS0PageResource , Объединенной в структуру MxdcS0PageResourceEscape .
  • Вызов екстескапе должен осуществляться между вызовом StartPage и вызовом EndPage, но между вызовами StartPage и EndPage может быть несколько таких вызовов.
  • Потоковая передача данных более эффективна, если вы вызываете екстескапе с мксдкоп _ Set _ S0PAGE _ Resource как код операции для каждого ресурса на странице, прежде чем вызывать его с мксдкоп _ Set _ S0PAGE.

Когда код операции — мксдкоп _ Set _ кспспасссру _ mode:

  • Параметр лпсзиндата функции екстескапе состоит только из структуры escape-заголовка мксдк _ _ _ T .
  • Этот вызов должен быть выполнен до вызова стартдок.

Требования

Требование Значение
Минимальная версия клиента
Windows [Только классические приложения Vista]
Минимальная версия сервера
Windows Только для [ настольных приложений сервера 2008]
Header
Мксдк. h

См. также раздел

Вывод на печать

Структуры API диспетчера очереди печати

Escape-функции принтера GDI

екстескапе

Escape-МКСДК _