WDM设备电源状态
			 2023-10-09
			  54
			 0
			
			
			
				
			
			Windows电源管理相关编程 
		
			WDM的电源状态包括设备电源状态和系统电源状态。在头文件中分别定义如下:
设备电源状态
typedef enum _DEVICE_POWER_STATE {
    PowerDeviceUnspecified = 0,
    PowerDeviceD0,
    PowerDeviceD1,
    PowerDeviceD2,
    PowerDeviceD3,
    PowerDeviceMaximum
} DEVICE_POWER_STATE, *PDEVICE_POWER_STATE;
系统电源状态
typedef enum _SYSTEM_POWER_STATE {
    PowerSystemUnspecified = 0,
    PowerSystemWorking     = 1,
    PowerSystemSleeping1   = 2,
    PowerSystemSleeping2   = 3,
    PowerSystemSleeping3   = 4,
    PowerSystemHibernate   = 5,
    PowerSystemShutdown    = 6,
    PowerSystemMaximum     = 7
} SYSTEM_POWER_STATE, *PSYSTEM_POWER_STATE;
电源状态的初始化
一个设备FDO在创建后,应在其扩展单元结构体中随时跟踪记录设备和系统的电源状态,以实现不同的设备状态转换。
但设备在初始化时即AddDevice中IoCreateDevice后,电源状态应初始化:
    pdx->DevicePowerState = PowerDeviceUnspecified;
    pdx->SystemPowerState = PowerSystemWorking;
 Windows电源管理
			Windows电源管理
			




