Partager via


KsEnableEvent, fonction (ks.h)

La fonction KsEnableEvent active les événements demandés via IOCTL_KS_ENABLE_EVENT. Elle répond à tous les identificateurs d’événement 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 gérée. L’objet de 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 du jeu d’événements.

[in, out] EventsList

Si le KSEVENT_SET de l’événement d’activation. AddHandler pour le jeu d’événements est NULL , il doit pointer vers la tête de la liste des éléments KSEVENT_ENTRY sur lesquels l’événement doit être ajouté. Cette fonction suppose une seule liste 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 des é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é est NULL, puis il est utilisé pour synchroniser l’accès à la liste. Cette valeur peut être null si aucun indicateur n’est défini dans EventsFlags.

Valeur de retour

La fonction KsEnableEvent retourne STATUS_SUCCESS si elle réussit, ou une erreur spécifique à l’événement activé en cas d’échec. La fonction définit toujours la IO_STATUS_BLOCK. Champ d’informations du PIRP. Élément IoStatus au sein de l’IRP à zéro. Elle ne définit pas le IO_STATUS_BLOCK. Champ d’état, pas plus qu’il ne termine l’IRP.

Remarques

Les minidrivers n’appellent pas KsEnableEvent. Seul un pilote KS pur ou un pilote de classe doit appeler cette routine.

Exigences

Exigence Valeur
plateforme cible Universel
d’en-tête ks.h (include Ks.h)
bibliothèque Ks.lib

Voir aussi

KsDisableEvent