Freigeben über


Escapefunktion (wingdi.h)

Mit der Escape-Funktion kann eine Anwendung auf die systemdefinierte Gerätefunktionen zugreifen, die nicht über GDI verfügbar sind. Escapeaufrufe, die von einer Anwendung getätigt werden, werden übersetzt und an den Treiber gesendet.

Syntax

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

Parameter

[in] hdc

Ein Handle für den Gerätekontext.

[in] iEscape

Die auszuführende Escapefunktion. Dieser Parameter muss einer der vordefinierten Escapewerte sein, die unter Hinweise aufgeführt sind. Verwenden Sie die ExtEscape-Funktion , wenn Ihre Anwendung einen privaten Escapewert definiert.

[in] cjIn

Die Anzahl der Byte von Daten, auf die der lpvInData-Parameter verweist. Dies kann 0 sein.

[in] pvIn

Ein Zeiger auf die Eingabestruktur, die für den angegebenen Escape-Wert erforderlich ist.

[out] pvOut

Ein Zeiger auf die Struktur, die die Ausgabe von dieser Escape empfängt. Dieser Parameter sollte NULL sein, wenn keine Daten zurückgegeben werden.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert größer als 00, mit Ausnahme des QUERYESCSUPPORT-Drucker-Escapespeichers , der nur die Implementierung überprüft. Wenn der Escape nicht implementiert ist, ist der Rückgabewert 0.

Wenn die Funktion fehlschlägt, ist der Rückgabewert ein Systemfehlercode.

Hinweise

Hinweis Dies ist eine blockierende oder synchrone Funktion und wird möglicherweise nicht sofort zurückgegeben. Wie schnell diese Funktion zurückgibt, hängt von Laufzeitfaktoren wie Netzwerk-status, Druckserverkonfiguration und Druckertreiberimplementierung ab – Faktoren, die beim Schreiben einer Anwendung schwer vorherzusagen sind. Wenn Sie diese Funktion über einen Thread aufrufen, der die Interaktion mit der Benutzeroberfläche verwaltet, kann die Anwendung nicht reagieren.
 
Die Auswirkung des Übergebens von 0 für cbInput hängt vom Wert von nEscape und vom Treiber ab, der den Escape-Wert verarbeitet.

Von den ursprünglichen Drucker-Escapes kann nur folgendes verwendet werden.

Escape BESCHREIBUNG
QUERYESCSUPPORT Bestimmt, ob eine bestimmte Escape vom Gerätetreiber implementiert wird.
PASSTHROUGH Ermöglicht der Anwendung, Daten direkt an einen Drucker zu senden.
 

Informationen zu Drucker-Escapes finden Sie unter ExtEscape.

Verwenden Sie die StartPage-Funktion , um den Druckertreiber für den Empfang von Daten vorzubereiten.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile wingdi.h (einschließlich Windows.h)
Bibliothek Gdi32.lib
DLL Gdi32.dll

Weitere Informationen

AbortDoc

Documentproperties

EndDoc

EndPage

ExtEscape

GetDeviceCaps

Druckspooler-API-Funktionen

PrinterProperties

Drucken

ResetDC

SetAbortProc

StartDoc

StartPage