OpenPort-Funktion (winsplp.h)

Die OpenPort-Funktion eines Portmonitors öffnet einen Druckerport.

Syntax

BOOL OpenPort(
  LPWSTR  pName,
  PHANDLE pHandle
);

Parameter

pName

Vom Aufrufer bereitgestellter Zeiger auf eine Zeichenfolge, die den Namen des zu öffnenden Ports enthält.

pHandle

Vom Aufrufer bereitgestellter Zeiger auf einen Speicherort, an dem ein Porthandle empfangen werden soll.

Rückgabewert

Wenn der Vorgang erfolgreich ist, sollte die Funktion TRUE zurückgeben. Andernfalls sollte false zurückgegeben werden.

Hinweise

Portmonitorserver-DLLs sind erforderlich, um eine OpenPort-Funktion zu definieren und die Adresse der Funktion in eine MONITOR2-Struktur einzuschließen.

Die OpenPort-Funktion wird entweder von einem Sprachmonitor oder vom Druckspooler aufgerufen, wenn eine Druckwarteschlange mit einem Port verbunden ist. Der Hauptzweck der OpenPort-Funktion besteht darin, ein Porthandle zurückzugeben, das der Aufrufer als Eingabeargument für nachfolgende Aufrufe der Funktionen StartDocPort, WritePort, ReadPort, EndDocPort und GetPrinterDataFromPort des Portmonitors verwenden kann.

Neben der Rückgabe eines Porthandles kann die OpenPort-Funktion Initialisierungsvorgänge ausführen, die vor der Ausführung von Lese- oder Schreibvorgängen ausgeführt werden müssen. Wenn der Port beispielsweise änderbare Timeoutwerte unterstützt, sollte die OpenPort-Funktion diese Werte festlegen.

Aufrufe von OpenPort sind nicht druckauftragsspezifisch. Zwischen jedem Aufruf der OpenPort- und ClosePort-Funktionen eines Portmonitors kann es mehrere Aufrufe der Funktionen StartDocPort und EndDocPort geben.

Sie können davon ausgehen, dass der Druckspooler OpenPort mit einem bestimmten Portnamen nicht erneut mit demselben Portnamen aufruft, bevor ClosePort aufgerufen wird.

Drucküberwachungsfunktionen, die ein Porthandle als Eingabe akzeptieren, akzeptieren nicht auch ein Monitorhandle. Daher muss die OpenPort-Funktion das empfangene Monitorhandle an einer Position speichern, auf die vom Porthandle verwiesen werden kann. Dadurch können die Funktionen, die ein Porthandle akzeptieren, auf das Monitorhandle verweisen.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile winsplp.h (einschließlich Winsplp.h)
Bibliothek NtosKrnl.exe

Weitere Informationen

GetPrinterDataFromPort

SetPortTimeOuts

ClosePort

StartDocPort

OpenPortEx

InitializePrintMonitor2

WritePort

EndDocPort

ReadPort