#else
function_name = (TCHAR *) function;
#endif
- log_event(EVENTLOG_WARNING_TYPE, NSSM_EVENT_GETPROCADDRESS_FAILED, function_name, error_string(*error), 0);
+ if (*error != ERROR_PROC_NOT_FOUND) log_event(EVENTLOG_WARNING_TYPE, NSSM_EVENT_GETPROCADDRESS_FAILED, function_name, error_string(*error), 0);
#ifdef UNICODE
if (function_name) HeapFree(GetProcessHeap(), 0, function_name);
#endif
}
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;
}