Freigeben über


KsEnableEvent-Funktion (ks.h)

Die KsEnableEvent-Funktion ermöglicht Ereignisse, die über IOCTL_KS_ENABLE_EVENT angefordert werden. Er antwortet auf alle ereignisbezeichner, die von den Sätzen definiert wurden. Diese Funktion kann nur bei PASSIVE_LEVEL aufgerufen werden.

Syntax

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
);

Parameter

[in] Irp

Gibt das IRP mit der zu verarbeitenden Aktivierungsanforderung an. Das dem IRP zugeordnete Dateiobjekt wird beim Deaktivieren des Ereignisses mit dem Ereignis für einen späteren Vergleich gespeichert.

[in] EventSetsCount

Gibt die Anzahl der übergebenen Ereignissatzstrukturen an.

[in] EventSet

Gibt einen Zeiger auf die Liste der Ereignissatzinformationen an.

[in, out] EventsList

Wenn das KSEVENT_SET des Aktivierungsereignisses. Der AddHandler für den Ereignissatz ist NULL-, muss auf den Kopf der Liste der KSEVENT_ENTRY Elemente verweisen, zu denen das Ereignis hinzugefügt werden soll. Diese Funktion setzt eine einzelne Liste für mindestens eine Teilmenge von Ereignissen voraus.

[in, optional] EventsFlags

Gibt KSEVENTS_LOCKTYPE Flags an, die den Typ der Ausschlusssperre angeben, die bei einem Zugriff auf die Ereignisliste verwendet werden soll. Wenn keine Kennzeichnung festgelegt ist, wird keine Sperre übernommen. Wenn bereits ein Handler angegeben ist, wird dieser Parameter ignoriert.

[in, optional] EventsLock

Wenn die KSEVENT_SET. AddHandler für den Ereignissatz, der das aktivierte Ereignis enthält, ist NULL-und wird dann verwendet, um den Zugriff auf die Liste zu synchronisieren. Dieser Wert kann NULL- werden, wenn in EventsFlagskein Flag festgelegt ist.

Rückgabewert

Die KsEnableEvent--Funktion gibt STATUS_SUCCESS zurück, wenn dies erfolgreich war, oder einen Fehler, der für das Ereignis spezifisch ist, das aktiviert wird, wenn dies nicht erfolgreich ist. Die Funktion legt immer den IO_STATUS_BLOCK fest. Informationsfeld des PIRP. IoStatus-Element innerhalb des IRP auf Null. Die IO_STATUS_BLOCK wird nicht festgelegt. Statusfeld, noch wird das IRP abgeschlossen.

Bemerkungen

Minidriver rufen KsEnableEventnicht auf. Diese Routine sollte nur von einem reinen KS-Treiber oder einem Klassentreiber aufgerufen werden.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- ks.h (enthalten Ks.h)
Library Ks.lib

Siehe auch

KsDisableEvent-