2 * PROJECT: ReactOS system libraries
3 * LICENSE: GPL - See COPYING in the top level directory
4 * FILE: dll/win32/wlnotify/schedsvc.c
5 * PURPOSE: Scheduler service logon notifications
6 * PROGRAMMER: Eric Kohl <eric.kohl@reactos.org>
19 PWLX_NOTIFICATION_INFO pInfo
)
21 SC_HANDLE hManager
= NULL
;
22 SC_HANDLE hService
= NULL
;
23 SERVICE_STATUS ServiceStatus
;
25 DPRINT("SchedStartShellEvent\n");
26 DPRINT("Size: %lu\n", pInfo
->Size
);
27 DPRINT("Flags: %lx\n", pInfo
->Flags
);
28 DPRINT("UserName: %S\n", pInfo
->UserName
);
29 DPRINT("Domain: %S\n", pInfo
->Domain
);
30 DPRINT("WindowStation: %S\n", pInfo
->WindowStation
);
31 DPRINT("hToken: %p\n", pInfo
->hToken
);
32 DPRINT("hDesktop: %p\n", pInfo
->hDesktop
);
33 DPRINT("pStatusCallback: %p\n", pInfo
->pStatusCallback
);
35 hManager
= OpenSCManagerW(NULL
, NULL
, SC_MANAGER_CONNECT
);
38 DPRINT1("OpenSCManagerW() failed (Error %lu)\n", GetLastError());
42 hService
= OpenServiceW(hManager
, L
"Schedule", SERVICE_USER_DEFINED_CONTROL
);
45 DPRINT1("OpenServiceW() failed (Error %lu)\n", GetLastError());
49 if (!ControlService(hService
, 129, &ServiceStatus
))
51 DPRINT1("ControlService() failed (Error %lu)\n", GetLastError());
56 CloseServiceHandle(hService
);
59 CloseServiceHandle(hManager
);
66 PWLX_NOTIFICATION_INFO pInfo
)
68 SC_HANDLE hManager
= NULL
;
69 SC_HANDLE hService
= NULL
;
70 SERVICE_STATUS ServiceStatus
;
72 DPRINT("SchedStartShellEvent\n");
73 DPRINT("Size: %lu\n", pInfo
->Size
);
74 DPRINT("Flags: %lx\n", pInfo
->Flags
);
75 DPRINT("UserName: %S\n", pInfo
->UserName
);
76 DPRINT("Domain: %S\n", pInfo
->Domain
);
77 DPRINT("WindowStation: %S\n", pInfo
->WindowStation
);
78 DPRINT("hToken: %p\n", pInfo
->hToken
);
79 DPRINT("hDesktop: %p\n", pInfo
->hDesktop
);
80 DPRINT("pStatusCallback: %p\n", pInfo
->pStatusCallback
);
82 hManager
= OpenSCManagerW(NULL
, NULL
, SC_MANAGER_CONNECT
);
85 DPRINT1("OpenSCManagerW() failed (Error %lu)\n", GetLastError());
89 hService
= OpenServiceW(hManager
, L
"Schedule", SERVICE_USER_DEFINED_CONTROL
);
92 DPRINT1("OpenServiceW() failed (Error %lu)\n", GetLastError());
96 if (!ControlService(hService
, 128, &ServiceStatus
))
98 DPRINT1("ControlService() failed (Error %lu)\n", GetLastError());
102 if (hService
!= NULL
)
103 CloseServiceHandle(hService
);
105 if (hManager
!= NULL
)
106 CloseServiceHandle(hManager
);