EXT_DELETE_CALLBACK funzione di callback (wdm.h)
Una routine di callback exTimerDeleteCallback viene eseguita quando il sistema operativo elimina un oggetto timer EX_TIMER .
Sintassi
EXT_DELETE_CALLBACK ExtDeleteCallback;
void ExtDeleteCallback(
[in, optional] PVOID Context
)
{...}
Parametri
[in, optional] Context
Valore di contesto del membro DeleteContext della struttura EXT_DELETE_PARAMETERS passata in precedenza come parametro di input alla routine ExDeleteTimer .
Valore restituito
nessuno
Osservazioni
Come opzione, il driver può fornire un puntatore a una routine ExTimerDeleteCallback nel membro DeleteCallback della struttura EXT_DELETE_PARAMETERS che il driver passa come parametro di input alla routine ExDeleteTimer . La routine ExTimerDeleteCallback può liberare qualsiasi risorsa di archiviazione o altre risorse di sistema che il driver potrebbe aver precedentemente allocato per l'uso con l'oggetto timer eliminato.
Se il driver fornisce una routine ExTimerDeleteCallback e il parametro Wait nella chiamata ExDeleteRoutine è TRUE, la routine ExTimerDeleteCallback viene eseguita prima che ExDeleteTimer restituisca. In caso contrario, la routine ExTimerDeleteCallback potrebbe essere eseguita prima o dopo la chiamata exDeleteTimer . La routine ExTimerDeleteCallback viene chiamata solo dopo che l'oggetto timer è stato disabilitato per impedire ulteriori operazioni timer e qualsiasi operazione timer in sospeso sull'oggetto timer viene annullata o completata. L'oggetto timer (una struttura EX_TIMER ) che il driver passa come parametro di input alla routine ExDeleteTimer potrebbe non essere più valido al momento dell'esecuzione della routine ExTimerDeleteCallback .
Per altre informazioni, vedere Routine exXxxTimer e oggetti EX_TIMER.
Esempio
Per definire una routine di callback ExTimerDeleteCallback , è prima necessario specificare una dichiarazione di funzione che identifica il tipo di routine di callback che si sta definendo. Windows fornisce un set di tipi di funzione di callback per i driver. La dichiarazione di una funzione usando il tipo di funzione callback consente l'analisi del codice per i driver, il verifica driver statico (SDV) e altri strumenti di verifica trovano errori ed è un requisito per la scrittura di driver per il sistema operativo Windows.
Ad esempio, per definire una routine di callback exTimerDeleteCallback denominata MyExTimerDeleteCallback
, usare il tipo di funzione EXT_DELETE_CALLBACK, come illustrato nell'esempio di codice seguente:
EXT_DELETE_CALLBACK MyExTimerDeleteCallback;
Implementare quindi la routine di callback come indicato di seguito:
_Use_decl_annotations_
VOID
MyExTimerDeleteCallback(
PVOID Context
)
{...}
Il tipo di funzione EXT_DELETE_CALLBACK è definito nel file di intestazione Wdm.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 usate le annotazioni applicate al tipo di funzione EXT_DELETE_CALLBACK nel file di intestazione. Per altre informazioni sui requisiti per le dichiarazioni di funzione, vedere Dichiarazione di funzioni tramite tipi di ruolo per i driver WDM. Per altre informazioni su , vedere Annotazione del_Use_decl_annotations_
comportamento della funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows 8.1. |
Piattaforma di destinazione | Desktop |
Intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
IRQL | Chiamato in DISPATCH_LEVEL. |