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 |