Funzione KsEnableEvent (ks.h)
La funzione di KsEnableEvent abilita gli eventi richiesti tramite IOCTL_KS_ENABLE_EVENT. Risponde a tutti gli identificatori di evento definiti dai set. Questa funzione può essere chiamata solo in PASSIVE_LEVEL.
Sintassi
KSDDKAPI NTSTATUS KsEnableEvent(
[in] PIRP Irp,
[in] ULONG EventSetsCount,
[in] const KSEVENT_SET *EventSet,
[in, out] PLIST_ENTRY EventsList,
[in, optional] KSEVENTS_LOCKTYPE EventsFlags,
[in, optional] PVOID EventsLock
);
Parametri
[in] Irp
Specifica l'IRP con la richiesta di abilitazione gestita. L'oggetto file associato all'IRP viene archiviato con l'evento per un confronto successivo durante la disabilitazione dell'evento.
[in] EventSetsCount
Indica il numero di strutture del set di eventi passate.
[in] EventSet
Specifica un puntatore all'elenco di informazioni sul set di eventi.
[in, out] EventsList
Se il KSEVENT_SET dell'evento di abilitazione. AddHandler per il set di eventi è NULL, deve puntare all'inizio dell'elenco di KSEVENT_ENTRY elementi in cui deve essere aggiunto l'evento. Questa funzione presuppone un singolo elenco per almeno un subset di eventi.
[in, optional] EventsFlags
Specifica KSEVENTS_LOCKTYPE flag che specificano il tipo di blocco di esclusione da utilizzare per accedere all'elenco di eventi, se presente. Se non viene impostato alcun flag, non viene eseguito alcun blocco. Se è già specificato un gestore, questo parametro viene ignorato.
[in, optional] EventsLock
Se il KSEVENT_SET. AddHandler per il set di eventi contenente l'evento abilitato è NULL, quindi viene usato per sincronizzare l'accesso all'elenco. Questo valore può essere null se non è impostato alcun flag in EventsFlags.
Valore restituito
La funzione KsEnableEvent restituisce STATUS_SUCCESS in caso di esito positivo o un errore specifico dell'evento abilitato in caso di esito negativo. La funzione imposta sempre il IO_STATUS_BLOCK. Campo informativo del PIRP. Elemento IoStatus all'interno di IRP su zero. Non imposta il IO_STATUS_BLOCK. Campo Stato, né completa l'IRP.
Osservazioni
I minidriver non chiamano KsEnableEvent. Solo un driver KS puro o un driver di classe deve chiamare questa routine.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Universale |
intestazione | ks.h (include Ks.h) |
libreria | Ks.lib |