KsEnableEvent, fonction (ks.h)
La fonction KsEnableEvent active les événements demandés via IOCTL_KS_ENABLE_EVENT. Il répond à tous les identificateurs d’événements définis par les jeux. Cette fonction ne peut être appelée qu’à PASSIVE_LEVEL.
Syntaxe
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
);
Paramètres
[in] Irp
Spécifie l’IRP avec la demande d’activation en cours de traitement. L’objet fichier associé à l’IRP est stocké avec l’événement pour une comparaison ultérieure lors de la désactivation de l’événement.
[in] EventSetsCount
Indique le nombre de structures de jeu d’événements passées.
[in] EventSet
Spécifie un pointeur vers la liste des informations de jeu d’événements.
[in, out] EventsList
Si l’événement d’activation KSEVENT_SET. AddHandler pour le jeu d’événements a la valeur NULL. Il doit pointer vers le début de la liste des éléments KSEVENT_ENTRY auxquels l’événement doit être ajouté. Cette fonction suppose une liste unique pour au moins un sous-ensemble d’événements.
[in, optional] EventsFlags
Spécifie KSEVENTS_LOCKTYPE indicateurs spécifiant le type de verrou d’exclusion à utiliser pour accéder à la liste d’événements, le cas échéant. Si aucun indicateur n’est défini, aucun verrou n’est pris. Si un gestionnaire est déjà spécifié, ce paramètre est ignoré.
[in, optional] EventsLock
Si le KSEVENT_SET. AddHandler pour le jeu d’événements contenant l’événement activé a la valeur NULL, puis est utilisé pour synchroniser l’accès à la liste. Cette valeur peut être NULL si aucun indicateur n’est défini dans EventsFlags.
Valeur retournée
La fonction KsEnableEvent retourne STATUS_SUCCESS en cas de réussite, ou une erreur spécifique à l’événement activé en cas d’échec. La fonction définit toujours le IO_STATUS_BLOCK. Champ d’informations du PIRP. Élément IoStatus dans l’IRP à zéro. Il ne définit pas le IO_STATUS_BLOCK. Le champ État ne termine pas non plus l’IRP.
Remarques
Les minidrivers n’appellent pas KsEnableEvent. Seul un pilote KS pur ou un pilote de classe doit appeler cette routine.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | ks.h (inclure Ks.h) |
Bibliothèque | Ks.lib |