mirror of
https://github.com/reactos/reactos.git
synced 2024-10-15 05:37:44 +00:00
Fix pause / resume code. The buttons need fixing yet so it still won't work, although the menu items probably will.
svn path=/trunk/; revision=44976
This commit is contained in:
parent
b8882998c7
commit
0c02d2184e
|
@ -23,8 +23,23 @@ DoControl(PMAIN_WND_INFO Info,
|
|||
DWORD dwOldCheckPoint;
|
||||
DWORD dwWaitTime;
|
||||
DWORD dwMaxWait;
|
||||
DWORD dwReqState;
|
||||
BOOL bRet = FALSE;
|
||||
|
||||
/* Set the state we're interested in */
|
||||
switch (Control)
|
||||
{
|
||||
case SERVICE_CONTROL_PAUSE:
|
||||
dwReqState = SERVICE_PAUSED;
|
||||
break;
|
||||
case SERVICE_CONTROL_CONTINUE:
|
||||
dwReqState = SERVICE_RUNNING;
|
||||
break;
|
||||
default:
|
||||
/* Unhandled control code */
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
hSCManager = OpenSCManager(NULL,
|
||||
NULL,
|
||||
SC_MANAGER_CONNECT);
|
||||
|
@ -32,7 +47,7 @@ DoControl(PMAIN_WND_INFO Info,
|
|||
{
|
||||
hService = OpenService(hSCManager,
|
||||
Info->pCurrentService->lpServiceName,
|
||||
SERVICE_PAUSE_CONTINUE | SERVICE_INTERROGATE | SERVICE_QUERY_CONFIG);
|
||||
SERVICE_PAUSE_CONTINUE | SERVICE_INTERROGATE | SERVICE_QUERY_STATUS);
|
||||
if (hService)
|
||||
{
|
||||
if (hProgress)
|
||||
|
@ -58,7 +73,7 @@ DoControl(PMAIN_WND_INFO Info,
|
|||
dwStartTickCount = GetTickCount();
|
||||
|
||||
/* Loop until it's at the correct state */
|
||||
while (ServiceStatus.dwCurrentState != Control)
|
||||
while (ServiceStatus.dwCurrentState != dwReqState)
|
||||
{
|
||||
dwOldCheckPoint = ServiceStatus.dwCheckPoint;
|
||||
dwWaitTime = ServiceStatus.dwWaitHint / 10;
|
||||
|
@ -103,7 +118,7 @@ DoControl(PMAIN_WND_INFO Info,
|
|||
}
|
||||
}
|
||||
|
||||
if (ServiceStatus.dwCurrentState == Control)
|
||||
if (ServiceStatus.dwCurrentState == dwReqState)
|
||||
{
|
||||
bRet = TRUE;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue