PFNKSDEVICEQUERYPOWER, fonction de rappel (ks.h)
AVStream appelle la routine AVStrMiniDeviceQueryPower d’un minidriver lorsqu’il reçoit une demande de IRP_MN_QUERY_POWER.
Syntaxe
PFNKSDEVICEQUERYPOWER Pfnksdevicequerypower;
NTSTATUS Pfnksdevicequerypower(
[in] PKSDEVICE Device,
[in] PIRP Irp,
[in] DEVICE_POWER_STATE DeviceTo,
[in] DEVICE_POWER_STATE DeviceFrom,
[in] SYSTEM_POWER_STATE SystemTo,
[in] SYSTEM_POWER_STATE SystemFrom,
[in] POWER_ACTION Action
)
{...}
Paramètres
[in] Device
Pointeur vers la structure KSDEVICE qui a distribué le IRP_MN_QUERY_POWER.
[in] Irp
Pointeur vers le IRP_MN_QUERY_POWER émis par Device.
[in] DeviceTo
État d’alimentation demandé par l’émetteur de Irp.
[in] DeviceFrom
État actuel de l’alimentation de l’appareil.
[in] SystemTo
État du système vers lequel passer, spécifié lorsqu’une transition d’état d’alimentation système est interrogée. Cette valeur n’est pas spécifiée si l’appel est dû à une requête de modification de l’état de l’alimentation de l’appareil.
[in] SystemFrom
État système actuel, spécifié lorsqu’une transition d’état d’alimentation du système est interrogée. Cette valeur n’est pas spécifiée si l’appel est dû à une requête de modification de l’état de l’alimentation de l’appareil.
[in] Action
Spécifie des informations supplémentaires sur la transition demandée. Les valeurs possibles sont des énumérateurs du type POWER_ACTION.
Valeur de retour
Doit retourner STATUS_SUCCESS ou le code d’erreur retourné par la tentative d’exécution de l’opération. En retournant STATUS_SUCCESS, le pilote garantit qu’il ne démarrera aucune opération qui modifierait sa capacité à définir l’état d’alimentation demandé. Le pilote doit mettre en file d’attente n’importe quel IRP qui nécessiterait une telle opération jusqu’à ce qu’elle termine une IRP_MN_SET_POWER qui retourne l’appareil à un état d’alimentation acceptable.
Remarques
Le gestionnaire d’alimentation ou un propriétaire de stratégie d’alimentation d’appareil envoie une demande de IRP_MN_QUERY_POWER pour déterminer s’il peut modifier l’état de l’alimentation du système ou de l’appareil (par exemple, pour passer en veille).
Si un pilote échoue à une demande de IRP_MN_QUERY_POWER d’état d’alimentation du système, le gestionnaire d’alimentation répond généralement en émettant un IRP_MN_SET_POWER. En règle générale, cette IRP confirmera l’état actuel du système. Toutefois, il est possible que les pilotes reçoivent une IRP_MN_SET_POWER à l’état interrogé ou à un autre état intermédiaire. Les conducteurs doivent être prêts à gérer ces situations.
Le minidriver spécifie l’adresse de cette routine dans le membre QueryPower de sa structure de KSDEVICE_DISPATCH.
Cette routine est facultative.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible dans Microsoft Windows XP et les systèmes d’exploitation ultérieurs et DirectX 8.0 et versions ultérieures de DirectX. |
plateforme cible | Bureau |
d’en-tête | ks.h (include Ks.h) |