PROTOCOL_CM_DEREGISTER_SAP funzione di callback (ndis.h)
È necessaria la funzione ProtocolCmDeregisterSap . Questa funzione viene chiamata da NDIS per richiedere che un gestore chiamate deregisteri un SAP per conto di un client orientato alla connessione.
Sintassi
PROTOCOL_CM_DEREGISTER_SAP ProtocolCmDeregisterSap;
NDIS_STATUS ProtocolCmDeregisterSap(
[in] NDIS_HANDLE CallMgrSapContext
)
{...}
Parametri
[in] CallMgrSapContext
Specifica l'handle di un'area di contesto allocata dal gestore chiamate in cui il gestore chiamate gestisce le informazioni sullo stato per SAP. Il gestore chiamate ha fornito questo handle a NDIS dal relativo Funzione ProtocolCmRegisterSap .
Valore restituito
ProtocolCmDeregisterSap restituisce lo stato delle operazioni seguenti:
Codice restituito | Descrizione |
---|---|
|
Indica che il gestore chiamate ha rimosso correttamente la registrazione SAP ed ha liberato tutte le risorse allocate per gestire le informazioni per SAP. |
|
Indica che il gestore chiamate completerà la richiesta di annullare la registrazione asincrona di SAP. Il chiamante deve chiamare NdisCmDeregisterSapComplete per segnalare NDIS al termine dell'operazione. |
Commenti
ProtocolCmDeregisterSap comunica con i dispositivi di controllo di rete o altri agenti specifici del supporto, se necessario, per annullare la registrazione di SAP in rete. Tali azioni possono includere, ma non sono limitate a:
- Comunicazione con un hardware switching
- Comunicazione con una stazione di controllo di rete
- Comunicazione con altri agenti di rete specifici dei supporti
Inoltre, ProtocolCmDeregisterSap deve liberare qualsiasi risorsa allocata dinamicamente nella relativa area SAP, fornita in CallMgrSapContext, oltre a liberare l'area di stato stessa prima di restituire il controllo a NDIS.
Esempi
Per definire una funzione ProtocolCmDeregisterSap , è innanzitutto necessario fornire una dichiarazione di funzione che identifica il tipo di funzione che si sta definendo. Windows fornisce un set di tipi di funzione per i driver. La dichiarazione di una funzione con i tipi di funzione consente di eseguire l'analisi del codice per i driver, l'SDV ( Static Driver Verifier ) e altri strumenti di verifica rilevano gli errori ed è un requisito per la scrittura dei driver per il sistema operativo Windows.Ad esempio, per definire una funzione ProtocolCmDeregisterSap denominata "MyCmDeregisterSap", usare il tipo PROTOCOL_CM_DEREGISTER_SAP , come illustrato in questo esempio di codice:
PROTOCOL_CM_DEREGISTER_SAP MyCmDeregisterSap;
Implementare quindi la funzione come segue:
_Use_decl_annotations_
NDIS_STATUS
MyCmDeregisterSap(
NDIS_HANDLE CallMgrSapContext
)
{...}
Il tipo di funzione PROTOCOL_CM_DEREGISTER_SAP è definito nel file di intestazione Ndis.h. Per identificare in modo più accurato gli errori quando si eseguono gli strumenti di analisi del codice, assicurarsi di aggiungere l'annotazione Use_decl_annotations alla definizione della funzione. L'annotazione Use_decl_annotations garantisce che vengano utilizzate le annotazioni applicate al tipo di funzione PROTOCOL_CM_DEREGISTER_SAP nel file di intestazione. Per altre informazioni sui requisiti per le dichiarazioni di funzione, vedere Dichiarazione di funzioni tramite tipi di ruolo di funzione per i driver NDIS.
Per informazioni sulle Use_decl_annotations, vedere Annotazione del comportamento della funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Supportato per i driver NDIS 6.0 e NDIS 5.1 (vedere ProtocolCmDeregisterSap (NDIS 5.1)) in Windows Vista. Supportato per i driver NDIS 5.1 (vedere ProtocolCmDeregisterSap (NDIS 5.1)) in Windows XP. |
Piattaforma di destinazione | Windows |
Intestazione | ndis.h (include Ndis.h) |
IRQL | <= DISPATCH_LEVEL |