Disabled service has start button enabled (patch by gabrielilardi at hotmail dot it) - modified by myself (HeapFree, formatting)

See issue #2519 for more details.

svn path=/trunk/; revision=29493
This commit is contained in:
Christoph von Wittich 2007-10-11 10:15:46 +00:00
parent 7d51d9fd56
commit aedfd39a7f

View file

@ -23,9 +23,11 @@ SetButtonStates(PSERVICEPROPSHEET dlgInfo,
HWND hButton;
DWORD Flags, State;
UINT i;
LPQUERY_SERVICE_CONFIG lpServiceConfig;
Flags = dlgInfo->pService->ServiceStatusProcess.dwControlsAccepted;
State = dlgInfo->pService->ServiceStatusProcess.dwCurrentState;
lpServiceConfig = GetServiceConfig(dlgInfo->pService->lpServiceName);
for (i = IDC_START; i <= IDC_RESUME; i++)
{
@ -33,7 +35,7 @@ SetButtonStates(PSERVICEPROPSHEET dlgInfo,
EnableWindow (hButton, FALSE);
}
if (State == SERVICE_STOPPED)
if ( (State == SERVICE_STOPPED) && (lpServiceConfig->dwStartType != SERVICE_DISABLED) )
{
hButton = GetDlgItem(hwndDlg, IDC_START);
EnableWindow (hButton, TRUE);
@ -48,6 +50,11 @@ SetButtonStates(PSERVICEPROPSHEET dlgInfo,
hButton = GetDlgItem(hwndDlg, IDC_PAUSE);
EnableWindow (hButton, TRUE);
}
HeapFree(ProcessHeap,
0,
lpServiceConfig);
}
@ -485,3 +492,4 @@ OpenPropSheet(PMAIN_WND_INFO Info)
return Ret;
}