Partager via


structure REASON_CONTEXT (minwinbase.h)

Contient des informations sur une demande d’alimentation. Cette structure est utilisée par les fonctions PowerCreateRequest et SetWaitableTimerEx .

Syntaxe

typedef struct _REASON_CONTEXT {
  ULONG Version;
  DWORD Flags;
  union {
    struct {
      HMODULE LocalizedReasonModule;
      ULONG   LocalizedReasonId;
      ULONG   ReasonStringCount;
      LPWSTR  *ReasonStrings;
    } Detailed;
    LPWSTR SimpleReasonString;
  } Reason;
} REASON_CONTEXT, *PREASON_CONTEXT;

Membres

Version

Numéro de version de la structure. Ce paramètre doit être défini sur POWER_REQUEST_CONTEXT_VERSION.

Flags

Format de la raison de la demande d’alimentation. Ce paramètre peut être l’une des valeurs suivantes :

Valeur Signification
POWER_REQUEST_CONTEXT_DETAILED_STRING
0x00000002
La structure détaillée identifie une ressource de chaîne localisable qui décrit la raison de la demande d’alimentation.
POWER_REQUEST_CONTEXT_SIMPLE_STRING
0x00000001
Le paramètre SimpleReasonString contient une chaîne simple et non localisable qui décrit la raison de la demande d’alimentation.

Reason

Union qui se compose d’une structure détaillée ou d’une chaîne.

Reason.Detailed

Structure qui identifie une ressource de chaîne localisable pour décrire la raison de la demande d’alimentation.

Reason.Detailed.LocalizedReasonModule

Module qui contient la ressource de chaîne.

Reason.Detailed.LocalizedReasonId

ID de la ressource de chaîne.

Reason.Detailed.ReasonStringCount

Nombre de chaînes dans le paramètre ReasonStrings .

Reason.Detailed.ReasonStrings

Tableau de chaînes à remplacer dans la ressource de chaîne au moment de l’exécution.

Reason.SimpleReasonString

Chaîne non localisée qui décrit la raison de la demande d’alimentation.

Remarques

Il est prudent de passer des chaînes en lecture seule en tant que SimpleReasonString ou ReasonStrings , car les fonctions PowerCreateRequest et SetWaitableTimerEx lisent à partir des chaînes et ne les écrivent pas.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
En-tête minwinbase.h (inclure Windows.h)

Voir aussi

PowerCreateRequest

SetWaitableTimerEx