Funzione WskCaptureProviderNPI (wsk.h)

La funzione WskCaptureProviderNPI acquisisce un provider Network Programming Interface (NPI) quando diventa disponibile dal sottosistema WSK.

Sintassi

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

Parametri

[in] WskRegistration

Puntatore alla posizione di memoria inizializzata da WskRegister che identifica un'istanza di registrazione dell'applicazione WSK. Per altre informazioni, vedere WSK_REGISTRATION.

[in] WaitTimeout

Il tempo, in millisecondi, che la funzione WskCaptureProviderNPI può attendere fino a quando non diventa disponibile il provider WSK. In alternativa, è possibile specificare quanto segue:

WSK_NO_WAIT

Restituisce da questa funzione immediatamente se il provider NPI non è disponibile.

WSK_INFINITE_WAIT

Attendere fino a quando il provider npI non è disponibile dal sottosistema WSK.

Per altre informazioni su come viene usato questo parametro, vedere Registrazione di un'applicazione kernel Winsock.

[out] WskProviderNpi

Puntatore al provider WSK restituito dal provider WSK. Questa struttura WSK_PROVIDER_NPI contiene un puntatore alla tabella di invio del provider WSK delle funzioni WSK che l'applicazione WSK può chiamare.

Valore restituito

WskCaptureProviderNPI restituisce uno dei codici NTSTATUS seguenti:

Codice restituito Descrizione
STATUS_SUCCESS
L'acquisizione dei criteri di rete del provider è stata completata correttamente.
STATUS_DEVICE_NOT_READY
Il provider NPI non è ancora disponibile.
STATUS_NOINTERFACE
La versione richiesta dal client WSK non è supportata dal sottosistema WSK.
Altri codici di stato
L'acquisizione dei criteri di rete del provider non è riuscita.

Commenti

Per ogni chiamata a WskCaptureProviderNPI che restituisce un codice riuscito, deve essere presente esattamente una chiamata WskReleaseProviderNPI corrispondente che usa lo stesso parametro WskRegistration passato a WskCaptureProviderNPI.

WskCaptureProviderNPI può essere chiamato dopo che viene effettuata una chiamata a WskDeregister solo se il blocco WskRegistration non è liberato o sovrascritto. Dopo aver chiamato WskDeregister , tutte le chiamate aggiuntive a WskCaptureProviderNPI avranno esito negativo con il codice di stato STATUS_DEVICE_NOT_READY e, a meno che il provider NPI non diventi disponibile simultaneamente, tutte le chiamate WskCaptureProviderNPI esistenti bloccate in altri thread in attesa che il provider WSK npI diventi disponibile restituirà immediatamente con il codice di stato STATUS_DEVICE_NOT_READY.

Per altre informazioni sul collegamento di un'applicazione WSK al sottosistema WSK, vedere Registrazione di un'applicazione kernel Winsock.

I chiamanti della funzione WskCaptureProviderNPI devono essere eseguiti in IRQL = PASSIVE_LEVEL se WaitTimeout non è impostato su WSK_NO_WAIT; in caso contrario, i chiamanti devono essere in esecuzione in IRQL <= DISPATCH_LEVEL.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows Vista e versioni successive dei sistemi operativi Windows.
Piattaforma di destinazione Universale
Intestazione wsk.h (include Wsk.h)
Libreria Netio.lib
IRQL PASSIVE_LEVEL (vedere la sezione Osservazioni)

Vedi anche

WskDeregister

WskRegister

WskReleaseProviderNPI