Funzione NdisMAllocatePort (ndis.h)
La funzione NdisMAllocatePort alloca una porta NDIS associata a una scheda miniport.
Sintassi
NDIS_STATUS NdisMAllocatePort(
NDIS_HANDLE NdisMiniportHandle,
[in, out] PNDIS_PORT_CHARACTERISTICS PortCharacteristics
);
Parametri
NdisMiniportHandle
Handle dell'adattatore miniport passato al parametro MiniportAdapterHandle del parametro funzione miniportInitializeEx.
[in, out] PortCharacteristics
Puntatore a un oggetto NDIS_PORT_CHARACTERISTICS struttura che definisce le caratteristiche della porta.
Valore restituito
NdisMAllocatePort può restituire uno dei valori seguenti:
Codice restituito | Descrizione |
---|---|
|
NDIS ha allocato correttamente le risorse per la porta. |
|
NDIS non è riuscito ad allocare risorse per la porta. |
|
L'allocazione delle porte non è riuscita perché l'adattatore miniport associato è in corso di chiusura. |
|
I dati forniti nel parametro PortCharacteristics non sono validi. |
Osservazioni
La funzione NdisMAllocatePort alloca risorse e un numero di porta per una porta associata a una scheda miniport. La porta non è attiva finché il driver miniport genera un evento NetEventPortActivation Plug and Play (PnP) per la porta.
Dopo che il driver miniport attiva la porta, NDIS genera una notifica PnP per i driver overlying. Se un driver o un'applicazione in modalità utente genera l'OID OID_GEN_ENUMERATE_PORTS per enumerare le porte di un adattatore miniport, NDIS non include porte allocate non attive nell'elenco delle porte.
Quando NdisMAllocatePort viene restituito correttamente, il membro PortNumber di NDIS_PORT_CHARACTERISTICS struttura specificata dal parametro PortCharacteristics viene impostata sul numero di porta assegnato da NDIS alla porta.
Dopo che una porta non è più necessaria, il driver miniport deve chiamare la funzione NdisMFreePort per liberare la porta.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Supportato in NDIS 6.0 e versioni successive. |
piattaforma di destinazione | Universale |
intestazione | ndis.h (include Ndis.h) |
libreria | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |