Escape-функция (wingdi.h)

Функция Escape позволяет приложению получить доступ к возможностям системного устройства, которые недоступны через GDI. Escape-вызовы, выполняемые приложением, претворяются и отправляются драйверу.

Синтаксис

int Escape(
  [in]  HDC    hdc,
  [in]  int    iEscape,
  [in]  int    cjIn,
  [in]  LPCSTR pvIn,
  [out] LPVOID pvOut
);

Параметры

[in] hdc

Дескриптор контекста устройства.

[in] iEscape

Escape-функция, которую необходимо выполнить. Этот параметр должен быть одним из предопределенных escape-значений, перечисленных в разделе Примечания. Используйте функцию ExtEscape, если приложение определяет частное escape-значение.

[in] cjIn

Число байтов данных, на которые указывает параметр lpvInData . Это может быть 0.

[in] pvIn

Указатель на входную структуру, необходимую для указанного escape-файла.

[out] pvOut

Указатель на структуру, которая получает выходные данные из этого escape-файла. Если данные не возвращаются, этот параметр должен иметь значение NULL .

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение больше нуля, за исключением escape-файла принтера QUERYESCSUPPORT , который проверяет только реализацию. Если escape-экран не реализован, возвращаемое значение равно нулю.

Если функция завершается сбоем, возвращаемое значение представляет собой системный код ошибки.

Комментарии

Примечание Это блокирующая или синхронная функция, возвращаемая не сразу. Скорость возврата этой функции зависит от факторов времени выполнения, таких как состояние сети, конфигурация сервера печати и реализация драйвера принтера, которые трудно предсказать при написании приложения. Вызов этой функции из потока, который управляет взаимодействием с пользовательским интерфейсом, может привести к тому, что приложение не отвечает.
 
Эффект передачи 0 для cbInput будет зависеть от значения nEscape и от драйвера, обрабатывающего escape-экранирование.

Из исходных экранов принтера можно использовать только следующие.

ESC Описание
QUERYESCSUPPORT Определяет, реализуется ли определенный escape драйвером устройства.
ПРОХОЖДЕНИЯ Позволяет приложению отправлять данные непосредственно на принтер.
 

Сведения о escape-файлах принтера см. в разделе ExtEscape.

Используйте функцию StartPage , чтобы подготовить драйвер принтера к получению данных.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header wingdi.h (включая Windows.h)
Библиотека Gdi32.lib
DLL Gdi32.dll

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

AbortDoc

DocumentProperties

EndDoc

EndPage

ExtEscape

GetDeviceCaps

Функции API очереди печати принтера

Свойства PrinterProperties

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

ResetDC

SetAbortProc

StartDoc

StartPage