}
else if (error != ERROR_MOD_NOT_FOUND) return 5;
- imports.user32 = get_dll(_T("user32.dll"), &error);
- if (imports.user32) {
- imports.RegisterPowerSettingNotification = (RegisterPowerSettingNotification_ptr) get_import(imports.user32, "RegisterPowerSettingNotification", &error);
- if (! imports.RegisterPowerSettingNotification) {
- if (error != ERROR_PROC_NOT_FOUND) return 9;
- }
- }
- else if (error != ERROR_MOD_NOT_FOUND) return 8;
-
return 0;
}
typedef void (WINAPI *WakeConditionVariable_ptr)(PCONDITION_VARIABLE);
typedef BOOL (WINAPI *CreateWellKnownSid_ptr)(WELL_KNOWN_SID_TYPE, SID *, SID *, unsigned long *);
typedef BOOL (WINAPI *IsWellKnownSid_ptr)(SID *, WELL_KNOWN_SID_TYPE);
-typedef HANDLE (WINAPI *RegisterPowerSettingNotification_ptr)(HANDLE, LPCGUID, DWORD);
typedef struct {
HMODULE kernel32;
HMODULE advapi32;
- HMODULE user32;
AttachConsole_ptr AttachConsole;
SleepConditionVariableCS_ptr SleepConditionVariableCS;
WakeConditionVariable_ptr WakeConditionVariable;
CreateWellKnownSid_ptr CreateWellKnownSid;
IsWellKnownSid_ptr IsWellKnownSid;
- RegisterPowerSettingNotification_ptr RegisterPowerSettingNotification;
} imports_t;
HMODULE get_dll(const TCHAR *, unsigned long *);