Share via


SetPort-Funktion

Die SetPort-Funktion legt die status fest, die einem Druckerport zugeordnet ist.

Syntax

BOOL SetPort(
  _In_ LPTSTR pName,
  _In_ LPTSTR pPortName,
  _In_ DWORD  dwLevel,
  _In_ LPBYTE pPortInfo
);

Parameter

pName [in]

Zeiger auf eine Zeichenfolge mit Null, die den Namen des Druckerservers angibt, mit dem der Port verbunden ist. Legen Sie diesen Parameter auf NULL fest, wenn sich der Port auf dem lokalen Computer befindet.

pPortName [in]

Zeiger auf eine Zeichenfolge mit Null, die den Namen des Druckerports angibt.

dwLevel [in]

Gibt den Typ der Struktur an, auf die der pPortInfo-Parameter verweist.

Dieser Wert muss 3 sein, was einer PORT_INFO_3 Datenstruktur entspricht.

pPortInfo [in]

Zeiger auf eine PORT_INFO_3-Struktur, die den port status festzulegenden Informationen enthält.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Nichtzero-Wert.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null.

Bemerkungen

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 Druckertreiberimplementierungsfaktoren ab, 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.

Der Aufrufer der SetPort-Funktion muss als Administrator ausgeführt werden. Wenn es sich bei dem Aufrufer um einen Portmonitor oder Sprachmonitor handelt, muss revertToSelf aufgerufen werden, um den Identitätswechsel zu beenden, bevor SetPort aufgerufen wird.

Alle Programme, die SetPort aufrufen, müssen SERVER_ACCESS_ADMINISTER Zugriff auf den Server haben, mit dem der Port verbunden ist.

Wenn Sie einen Druckerport status Wert mit dem Schweregrad PORT_STATUS_TYPE_ERROR festlegen, sendet der Druckspooler keine Aufträge mehr an den Port. Der Druckspooler setzt das Senden von Aufträgen an den Port fort, wenn der Port status durch einen anderen Aufruf von SetPort gelöscht wird.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Winspool.h (einschließlich Windows.h)
Bibliothek
Winspool.lib
DLL
Winspool.drv
Unicode- und ANSI-Name
SetPortW (Unicode) und SetPortA (ANSI)

Siehe auch

Drucken

Druckspooler-API-Funktionen

PORT_INFO_3