KsSetPowerDispatch-Funktion (ks.h)

Legt die Power Dispatch-Funktion fest, die aufgerufen werden soll, wenn das Treiberobjekt eine IRP_MJ_POWER IRP empfängt. Dies ist nur wirksam, wenn KsDefaultDispatchPower aufgerufen wird, um Energie-IRPs zu verteilen oder abzuschließen.

Dies hat zur Folge, dass dieser Objektheader einer Liste von Objektheadern hinzugefügt wird, die über power dispatch-Routinen verfügen, die ausgeführt werden sollen. Der Kopf dieser Liste wird vom Geräteheader beibehalten. Es wird davon ausgegangen, dass der Aufrufer zuvor einen Geräteheader für das zugrunde liegende Geräteobjekt mit KsAllocateDeviceHeader zugeordnet hat.

Syntax

KSDDKAPI VOID KsSetPowerDispatch(
  [in]           KSOBJECT_HEADER       Header,
  [in, optional] PFNKSCONTEXT_DISPATCH PowerDispatch,
  [in, optional] PVOID                 PowerContext
);

Parameter

[in] Header

Verweist auf einen Header, der zuvor von KsAllocateObjectHeader zugeordnet wurde.

[in, optional] PowerDispatch

Enthält optional die Power Dispatch-Funktion, die aufgerufen wird, oder NULL , wenn die Funktion aus der Liste der aufgerufenen Funktionen entfernt werden soll. Diese Funktion darf die gesendete Leistungs-IRP nicht abschließen. Der Rückgabewert dieser Funktion muss STATUS_SUCCESS sein. KsSetPowerDispatch kann aufgerufen werden, während dieser Power Dispatch-Routine ausgeführt wird, wenn nur dieser Listeneintrag bearbeitet werden soll. Das Bearbeiten anderer Listeneinträge kann die aktuelle Enumeration verwirren.

[in, optional] PowerContext

Enthält optional den Kontextparameter, der an die Power Dispatch-Funktion übergeben werden soll.

Rückgabewert

Keine

Anforderungen

Anforderung Wert
Zielplattform Universell
Header ks.h (ks.h einschließen)
Bibliothek Ks.lib

Weitere Informationen

KStrContextDispatch