DevQueryPrintEx-Funktion (winddiui.h)

Die DevQueryPrintEx-Funktion einer Druckerschnittstellen-DLL bestimmt, ob ein angegebener Druckauftrag mit der aktuellen Konfiguration des Druckers kompatibel ist und daher gedruckt werden kann.

Syntax

BOOL DevQueryPrintEx(
  [in, out] PDEVQUERYPRINT_INFO pDQPInfo
);

Parameter

[in, out] pDQPInfo

Vom Aufrufer bereitgestellter Zeiger auf eine DEVQUERYPRINT_INFO-Struktur .

Rückgabewert

Wenn der Druckauftrag gedruckt werden kann, sollte die Funktion TRUE zurückgeben. Andernfalls sollte false zurückgegeben werden.

Hinweise

Druckerschnittstellen-DLLs müssen eine DevQueryPrintEx-Funktion definieren. Die Funktion wird vom Druckspooler aufgerufen, wenn die Option Nicht übereinstimmende Dokumente speichern auf der Seite Erweitert des Eigenschaftenblatts des Druckers aktiviert ist. Wenn die Funktion TRUE zurückgibt, wird der Druckauftrag vom Spooler für den Druck in die Warteschlange gestellt. Andernfalls wird der Auftrag unter der Annahme gehalten, dass der Drucker schließlich neu konfiguriert wird, damit der Auftrag drucken kann.

Die empfangene DEVQUERYPRINT_INFO-Struktur verweist auf eine DEVMODEW-Struktur , die die für den Druckauftrag erforderlichen Druckereigenschaften beschreibt. Die DevQueryPrintEx-Funktion sollte zunächst überprüfen, ob die Größe und die Version der empfangenen DEVMODEW-Struktur mit dem Treiber kompatibel sind. Anschließend sollte ermittelt werden, ob die bereitgestellten DEVMODEW-Inhalte mit der aktuellen Druckerkonfiguration kompatibel sind.

Wenn der Auftrag gedruckt werden kann, sollte die Funktion einfach TRUE zurückgeben. Wenn der Auftrag bis zu einem späteren Zeitpunkt gehalten werden soll, sollte die Funktion FALSE zurückgeben, nachdem sie eine anzeigebare Textzeichenfolge (im Puffer, auf den der pszErrorStr-Member der DEVQUERYPRINT_INFO-Struktur verweist) angegeben hat, warum der Auftrag nicht gedruckt werden kann.

Anzeigefähige Textzeichenfolgen sollten als Zeichenfolgenressourcen in einer Ressourcendatei definiert werden.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile winddiui.h (einschließlich Winddiui.h)
Bibliothek Winspool.lib
DLL WinSpool.drv