Freigeben über


WskCaptureProviderNPI-Funktion (wsk.h)

Die WskCaptureProviderNPI-Funktion erfasst eine Netzwerkprogrammierschnittstelle (Network Programming Interface, NPI), wenn sie über das WSK-Subsystem verfügbar wird.

Syntax

NTSTATUS WskCaptureProviderNPI(
  [in]  PWSK_REGISTRATION WskRegistration,
  [in]  ULONG             WaitTimeout,
  [out] PWSK_PROVIDER_NPI WskProviderNpi
);

Parameter

[in] WskRegistration

Ein Zeiger auf den von WskRegister initialisierten Speicherspeicherort, der die Registrierung einer WSK-Anwendung instance identifiziert. Weitere Informationen finden Sie unter WSK_REGISTRATION.

[in] WaitTimeout

Die Zeit in Millisekunden, zu der die WskCaptureProviderNPI-Funktion warten kann, bis die NPI des WSK-Anbieters verfügbar wird. Alternativ kann Folgendes angegeben werden:

WSK_NO_WAIT

Kehren Sie sofort von dieser Funktion zurück, wenn der Anbieter-NPI nicht verfügbar ist.

WSK_INFINITE_WAIT

Warten Sie, bis der Anbieter-NPI über das WSK-Subsystem verfügbar ist.

Weitere Informationen zur Verwendung dieses Parameters finden Sie unter Registrieren einer Winsock-Kernelanwendung.

[out] WskProviderNpi

Ein Zeiger auf den vom WSK-Anbieter zurückgegebenen NPI. Diese WSK_PROVIDER_NPI-Struktur enthält einen Zeiger auf die WSK-Anbieterverteilungstabelle der WSK-Funktionen, die die WSK-Anwendung aufrufen kann.

Rückgabewert

WskCaptureProviderNPI gibt einen der folgenden NTSTATUS-Codes zurück:

Rückgabecode Beschreibung
STATUS_SUCCESS
Die Anbieter-NPI-Erfassung wurde erfolgreich abgeschlossen.
STATUS_DEVICE_NOT_READY
Der Anbieter-NPI war noch nicht verfügbar.
STATUS_NOINTERFACE
Die vom WSK-Client angeforderte Version wird vom WSK-Subsystem nicht unterstützt.
Andere status Codes
Fehler bei der Anbieter-NPI-Erfassung.

Hinweise

Für jeden Aufruf von WskCaptureProviderNPI , der einen Erfolgscode zurückgibt, muss es genau einen entsprechenden WskReleaseProviderNPI-Aufruf geben, der denselben WskRegistration-Parameter verwendet, der an WskCaptureProviderNPI übergeben wurde.

WskCaptureProviderNPI kann nach einem Aufruf von WskDeregister nur aufgerufen werden, wenn der WskRegistration-Block nicht freigegeben oder überschrieben wird. Nachdem WskDeregister aufgerufen wurde, schlagen alle weiteren Aufrufe von WskCaptureProviderNPI mit status Code STATUS_DEVICE_NOT_READY fehl, und wenn die Anbieter-NPI nicht gleichzeitig verfügbar wird, werden alle vorhandenen WskCaptureProviderNPI-Aufrufe, die in anderen Threads blockiert sind, die darauf warten, dass die WSK-Anbieter-NPI verfügbar wird, sofort mit status Code STATUS_DEVICE_NOT_READY zurückgegeben.

Weitere Informationen zum Anfügen einer WSK-Anwendung an das WSK-Subsystem finden Sie unter Registrieren einer Winsock-Kernelanwendung.

Aufrufer der WskCaptureProviderNPI-Funktion müssen unter IRQL = PASSIVE_LEVEL ausgeführt werden, wenn WaitTimeout nicht auf WSK_NO_WAIT festgelegt ist; Andernfalls müssen Aufrufer unter IRQL <= DISPATCH_LEVEL ausgeführt werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.
Zielplattform Universell
Header wsk.h (einschließen von Wsk.h)
Bibliothek Netio.lib
IRQL PASSIVE_LEVEL (siehe Abschnitt Hinweise)

Weitere Informationen

WskDeregister

WskRegister

WskReleaseProviderNPI