Funzione NdisIMNotifyPnPEvent (ndis.h)
Nota NDIS 5. x è stato deprecato ed è sostituito da NDIS 6. x. Per il nuovo sviluppo di driver NDIS, vedere Driver di rete a partire da Windows Vista. Per informazioni sulla conversione di NDIS 5. driver x a NDIS 6. x, vedere Conversione di driver NDIS 5.x in NDIS 6.0.
NdisIMNotifyPnPEvent propaga la notifica di un evento Plug and Play o Power Management a un driver overlying.
Sintassi
NDIS_STATUS NdisIMNotifyPnPEvent(
[in] NDIS_HANDLE MiniportHandle,
[in] PNET_PNP_EVENT NetPnPEvent
);
Parametri
[in] MiniportHandle
Input di handle per MiniportInitialize. Questo handle rappresenta il driver miniport interessato dall'evento Plug and Play o Power Management passato alla funzione ProtocolPnPEvent del chiamante.
[in] NetPnPEvent
Puntatore a una struttura NET_PNP_EVENT, che descrive l'evento Plug and Play o l'evento Power Management indicato al driver del protocollo.
Valore restituito
NdisIMNotifyPnPEvent può restituire uno dei seguenti elementi:
Codice restituito | Descrizione |
---|---|
NDIS_STATUS_SUCCESS | Il driver overlying ha avuto esito positivo Plug and Play evento è stato completato. |
NDIS_STATUS_FAILURE | Il driver overlying ha avuto esito negativo sull'evento di Plug and Play propagato. |
Il valore restituito è significativo solo quando l'evento propagato è netEventQueryPower o NetEventQueryRemove. Per tutti gli altri eventi propagati, il valore restituito è sempre NDIS_STATUS_SUCCESS.
Commenti
Un driver intermedio NDIS chiama NdisIMNotifyPnPEvent nel contesto della funzione ProtocolPnPEvent del driver per propagare la notifica di un evento Plug and Play o Power Management al driver di overlying.
Se l'evento propagato è netEventQueryPower o NetEventQueryRemove, il driver intermedio deve controllare il valore NDIS_STATUS restituito da NdisIMNotifyPnPEvent. Se lo stato restituito è NDIS_STATUS_SUCCESS, il driver intermedio deve gestire l'evento internamente come di consueto e quindi restituire NDIS_STATUS_SUCCESS dalla relativa funzione ProtocolPnPEvent . Se lo stato restituito è NDIS_STATUS_FAILURE, il driver intermedio deve restituire NDIS_STATUS_FAILURE dal protocolloPnPEvent senza ulteriore elaborazione.
Per tutti gli altri eventi propagati, NdisIMNotifyPnPEvent restituisce sempre NDIS_STATUS_SUCCESS. La funzione ProtocolPnPEvent del driver intermedio in tali casi deve propagare la NDIS_STATUS restituita da NdisIMNotifyPnPEvent.
In che modo il driver intermedio elabora un netEventSetPower ricevuto dalla relativa funzione ProtocolPnPEvent dipende dallo stato di alimentazione del dispositivo specificato. Se lo stato di alimentazione del dispositivo specificato è NdisDeviceStateD0, il driver intermedio deve gestire l'evento internamente come di consueto e quindi chiamare NdisIMNotifyPnPEvent. Per qualsiasi altro stato di alimentazione del dispositivo specificato, il driver intermedio deve prima chiamare NdisIMNotifyPnPEvent e quindi gestire l'evento internamente come di consueto.
Un driver intermedio deve chiamare NdisIMNotifyPnPEvent per propagare un netEventReconfigure o NetEventBindList solo se netEventReconfigure o NetEventBindList è indicato in un protocollo non NULLBindingContext. Se in netEventReconfigure o NetEventBindList è indicato in un protocollo NULLBindingContext, il driver intermedio non deve chiamare NdisIMNotifyPnPEvent per propagare l'evento.
Se un driver intermedio gestisce un netEventReconfigure o un NetEventBindList, deve convalidare tutti i dati associati all'evento. Per altre informazioni su tali dati, vedere NET_PNP_EVENT per i driver del protocollo.
Il supporto del sistema per NdisIMNotifyPnPEvent è disponibile in Windows XP e versioni successive.
- Piattaforma di destinazione: universale
- Versione: non supportata per i driver NDIS 6.0 in Windows Vista. Usare invece NdisMNetPnPEvent. Supportato per i driver NDIS 5.1 in Windows Vista e Windows XP.
Requisiti
Requisito | Valore |
---|---|
Intestazione | ndis.h (includere Ndis.h) |
Libreria | Ndis.lib |
IRQL | PASSIVE_LEVEL |