mirror of
https://github.com/reactos/reactos.git
synced 2024-07-30 08:08:56 +00:00
- rewrite the Control code
- smooth the progress bar movement - clean up various other bits svn path=/trunk/; revision=29018
This commit is contained in:
parent
8732a04d4a
commit
9fdc73bf65
|
@ -12,43 +12,33 @@
|
||||||
BOOL CALLBACK
|
BOOL CALLBACK
|
||||||
AboutDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
|
AboutDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
|
||||||
{
|
{
|
||||||
HWND hLicenseEditWnd;
|
|
||||||
HICON hIcon = NULL;
|
|
||||||
TCHAR strLicense[700];
|
|
||||||
|
|
||||||
switch (message)
|
switch (message)
|
||||||
{
|
{
|
||||||
case WM_INITDIALOG:
|
case WM_INITDIALOG:
|
||||||
|
{
|
||||||
hIcon = (HICON)LoadImage(hInstance,
|
HWND hLicenseEditWnd;
|
||||||
MAKEINTRESOURCE(IDI_SM_ICON),
|
|
||||||
IMAGE_ICON,
|
|
||||||
16,
|
|
||||||
16,
|
|
||||||
0);
|
|
||||||
if (hIcon)
|
|
||||||
{
|
|
||||||
SendMessage(hDlg,
|
|
||||||
WM_SETICON,
|
|
||||||
ICON_SMALL,
|
|
||||||
(LPARAM)hIcon);
|
|
||||||
DestroyIcon(hIcon);
|
|
||||||
}
|
|
||||||
|
|
||||||
hLicenseEditWnd = GetDlgItem(hDlg,
|
hLicenseEditWnd = GetDlgItem(hDlg,
|
||||||
IDC_LICENSE_EDIT);
|
IDC_LICENSE_EDIT);
|
||||||
if (hLicenseEditWnd)
|
if (hLicenseEditWnd)
|
||||||
{
|
{
|
||||||
LoadString(hInstance,
|
LPTSTR lpString;
|
||||||
IDS_LICENSE,
|
|
||||||
strLicense,
|
|
||||||
sizeof(strLicense) / sizeof(TCHAR));
|
|
||||||
|
|
||||||
SetWindowText(hLicenseEditWnd,
|
if (AllocAndLoadString(&lpString,
|
||||||
strLicense);
|
hInstance,
|
||||||
|
IDS_LICENSE))
|
||||||
|
{
|
||||||
|
SetWindowText(hLicenseEditWnd,
|
||||||
|
lpString);
|
||||||
|
|
||||||
|
HeapFree(GetProcessHeap(),
|
||||||
|
0,
|
||||||
|
lpString);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
case WM_COMMAND:
|
case WM_COMMAND:
|
||||||
|
|
||||||
|
|
|
@ -18,117 +18,99 @@ Control(PMAIN_WND_INFO Info,
|
||||||
SC_HANDLE hSc;
|
SC_HANDLE hSc;
|
||||||
SERVICE_STATUS_PROCESS ServiceStatus;
|
SERVICE_STATUS_PROCESS ServiceStatus;
|
||||||
SERVICE_STATUS Status;
|
SERVICE_STATUS Status;
|
||||||
LVITEM item;
|
|
||||||
DWORD BytesNeeded = 0;
|
DWORD BytesNeeded = 0;
|
||||||
DWORD dwStartTickCount, dwOldCheckPoint;
|
BOOL bRet = FALSE;
|
||||||
|
BOOL bDispErr = TRUE;
|
||||||
|
|
||||||
item.mask = LVIF_PARAM;
|
|
||||||
item.iItem = Info->SelectedItem;
|
|
||||||
SendMessage(Info->hListView,
|
|
||||||
LVM_GETITEM,
|
|
||||||
0,
|
|
||||||
(LPARAM)&item);
|
|
||||||
|
|
||||||
/* open handle to the SCM */
|
|
||||||
hSCManager = OpenSCManager(NULL,
|
hSCManager = OpenSCManager(NULL,
|
||||||
NULL,
|
NULL,
|
||||||
SC_MANAGER_ALL_ACCESS);
|
SC_MANAGER_ALL_ACCESS);
|
||||||
if (hSCManager == NULL)
|
if (hSCManager != NULL)
|
||||||
{
|
{
|
||||||
GetError();
|
hSc = OpenService(hSCManager,
|
||||||
return FALSE;
|
Info->pCurrentService->lpServiceName,
|
||||||
}
|
SERVICE_ALL_ACCESS);
|
||||||
|
if (hSc != NULL)
|
||||||
/* open handle to the service */
|
|
||||||
hSc = OpenService(hSCManager,
|
|
||||||
Info->pCurrentService->lpServiceName,
|
|
||||||
SC_MANAGER_ALL_ACCESS);
|
|
||||||
if (hSc == NULL)
|
|
||||||
{
|
|
||||||
GetError();
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* process requested action */
|
|
||||||
if (! ControlService(hSc,
|
|
||||||
Control,
|
|
||||||
&Status))
|
|
||||||
{
|
|
||||||
GetError();
|
|
||||||
CloseServiceHandle(hSc);
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* query the state of the service */
|
|
||||||
if (! QueryServiceStatusEx(hSc,
|
|
||||||
SC_STATUS_PROCESS_INFO,
|
|
||||||
(LPBYTE)&ServiceStatus,
|
|
||||||
sizeof(SERVICE_STATUS_PROCESS),
|
|
||||||
&BytesNeeded))
|
|
||||||
{
|
|
||||||
GetError();
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Save the tick count and initial checkpoint. */
|
|
||||||
dwStartTickCount = GetTickCount();
|
|
||||||
dwOldCheckPoint = ServiceStatus.dwCheckPoint;
|
|
||||||
|
|
||||||
/* loop whilst service is not running */
|
|
||||||
/* FIXME: needs more control adding. 'Loop' is temparary */
|
|
||||||
while (ServiceStatus.dwCurrentState != Control)
|
|
||||||
{
|
|
||||||
DWORD dwWaitTime;
|
|
||||||
|
|
||||||
dwWaitTime = ServiceStatus.dwWaitHint / 10;
|
|
||||||
|
|
||||||
if (dwWaitTime < 500)
|
|
||||||
dwWaitTime = 500;
|
|
||||||
else if (dwWaitTime > 5000)
|
|
||||||
dwWaitTime = 5000;
|
|
||||||
|
|
||||||
IncrementProgressBar(hProgDlg);
|
|
||||||
|
|
||||||
/* wait before checking status */
|
|
||||||
Sleep(dwWaitTime);
|
|
||||||
|
|
||||||
/* check status again */
|
|
||||||
if (! QueryServiceStatusEx(hSc,
|
|
||||||
SC_STATUS_PROCESS_INFO,
|
|
||||||
(LPBYTE)&ServiceStatus,
|
|
||||||
sizeof(SERVICE_STATUS_PROCESS),
|
|
||||||
&BytesNeeded))
|
|
||||||
{
|
{
|
||||||
GetError();
|
if (ControlService(hSc,
|
||||||
return FALSE;
|
Control,
|
||||||
}
|
&Status))
|
||||||
|
|
||||||
if (ServiceStatus.dwCheckPoint > dwOldCheckPoint)
|
|
||||||
{
|
|
||||||
IncrementProgressBar(hProgDlg);
|
|
||||||
dwStartTickCount = GetTickCount();
|
|
||||||
dwOldCheckPoint = ServiceStatus.dwCheckPoint;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if(GetTickCount() - dwStartTickCount > ServiceStatus.dwWaitHint)
|
|
||||||
{
|
{
|
||||||
/* No progress made within the wait hint */
|
bDispErr = FALSE;
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
CloseServiceHandle(hSc);
|
if (QueryServiceStatusEx(hSc,
|
||||||
|
SC_STATUS_PROCESS_INFO,
|
||||||
|
(LPBYTE)&ServiceStatus,
|
||||||
|
sizeof(SERVICE_STATUS_PROCESS),
|
||||||
|
&BytesNeeded))
|
||||||
|
{
|
||||||
|
DWORD dwStartTickCount = GetTickCount();
|
||||||
|
DWORD dwOldCheckPoint = ServiceStatus.dwCheckPoint;
|
||||||
|
DWORD dwMaxWait = 2000 * 60; // wait for 2 mins
|
||||||
|
|
||||||
|
IncrementProgressBar(hProgDlg);
|
||||||
|
|
||||||
|
while (ServiceStatus.dwCurrentState != Control)
|
||||||
|
{
|
||||||
|
DWORD dwWaitTime = ServiceStatus.dwWaitHint / 10;
|
||||||
|
|
||||||
|
if (!QueryServiceStatusEx(hSc,
|
||||||
|
SC_STATUS_PROCESS_INFO,
|
||||||
|
(LPBYTE)&ServiceStatus,
|
||||||
|
sizeof(SERVICE_STATUS_PROCESS),
|
||||||
|
&BytesNeeded))
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ServiceStatus.dwCheckPoint > dwOldCheckPoint)
|
||||||
|
{
|
||||||
|
/* The service is making progress, increment the progress bar */
|
||||||
|
IncrementProgressBar(hProgDlg);
|
||||||
|
dwStartTickCount = GetTickCount();
|
||||||
|
dwOldCheckPoint = ServiceStatus.dwCheckPoint;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if(GetTickCount() >= dwStartTickCount + dwMaxWait)
|
||||||
|
{
|
||||||
|
/* give up */
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(dwWaitTime < 200)
|
||||||
|
dwWaitTime = 200;
|
||||||
|
else if (dwWaitTime > 10000)
|
||||||
|
dwWaitTime = 10000;
|
||||||
|
|
||||||
|
Sleep(dwWaitTime);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
CloseServiceHandle(hSc);
|
||||||
|
}
|
||||||
|
|
||||||
|
CloseServiceHandle(hSCManager);
|
||||||
|
}
|
||||||
|
|
||||||
if (ServiceStatus.dwCurrentState == Control)
|
if (ServiceStatus.dwCurrentState == Control)
|
||||||
{
|
{
|
||||||
CompleteProgressBar(hProgDlg);
|
CompleteProgressBar(hProgDlg);
|
||||||
Sleep(1000);
|
Sleep(500);
|
||||||
return TRUE;
|
bRet = TRUE;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return FALSE;
|
{
|
||||||
|
if (bDispErr)
|
||||||
|
GetError();
|
||||||
|
else
|
||||||
|
DisplayString(_T("The service failed to start"));
|
||||||
|
}
|
||||||
|
|
||||||
|
return bRet;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -146,7 +128,7 @@ BOOL DoStop(PMAIN_WND_INFO Info)
|
||||||
hProgDlg,
|
hProgDlg,
|
||||||
SERVICE_CONTROL_STOP);
|
SERVICE_CONTROL_STOP);
|
||||||
|
|
||||||
SendMessage(hProgDlg, WM_DESTROY, 0, 0);
|
DestroyWindow(hProgDlg);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -166,7 +148,7 @@ BOOL DoPause(PMAIN_WND_INFO Info)
|
||||||
hProgDlg,
|
hProgDlg,
|
||||||
SERVICE_CONTROL_PAUSE);
|
SERVICE_CONTROL_PAUSE);
|
||||||
|
|
||||||
SendMessage(hProgDlg, WM_DESTROY, 0, 0);
|
DestroyWindow(hProgDlg);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -186,7 +168,7 @@ BOOL DoResume(PMAIN_WND_INFO Info)
|
||||||
hProgDlg,
|
hProgDlg,
|
||||||
SERVICE_CONTROL_CONTINUE);
|
SERVICE_CONTROL_CONTINUE);
|
||||||
|
|
||||||
SendMessage(hProgDlg, WM_DESTROY, 0, 0);
|
DestroyWindow(hProgDlg);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
|
|
@ -68,7 +68,7 @@ CAPTION "
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Service Manager v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 130, 26
|
LTEXT "Service Manager v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 135, 26
|
||||||
PUSHBUTTON "Close", IDOK, 75, 162, 44, 15
|
PUSHBUTTON "Close", IDOK, 75, 162, 44, 15
|
||||||
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
||||||
|
@ -162,7 +162,7 @@ END
|
||||||
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
||||||
CAPTION "Óïðàâëåíèå íà óñëóãèòå"
|
CAPTION "Óïðàâëåíèå íà óñëóãèòå"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | WS_VISIBLE | DS_MODALFRAME
|
||||||
EXSTYLE WS_EX_TOOLWINDOW
|
EXSTYLE WS_EX_TOOLWINDOW
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
||||||
|
|
|
@ -68,7 +68,7 @@ CAPTION "Info
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Dienst-Manager v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 130, 26
|
LTEXT "Dienst-Manager v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 135, 26
|
||||||
PUSHBUTTON "Schließen", IDOK, 75, 162, 44, 15
|
PUSHBUTTON "Schließen", IDOK, 75, 162, 44, 15
|
||||||
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
||||||
|
@ -159,7 +159,7 @@ END
|
||||||
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
||||||
CAPTION "Dienststeuerung"
|
CAPTION "Dienststeuerung"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | WS_VISIBLE | DS_MODALFRAME
|
||||||
EXSTYLE WS_EX_TOOLWINDOW
|
EXSTYLE WS_EX_TOOLWINDOW
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
||||||
|
|
|
@ -68,7 +68,7 @@ CAPTION "About Service Manager"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Service Manager v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 130, 26
|
LTEXT "Service Manager v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 135, 26
|
||||||
PUSHBUTTON "Close", IDOK, 75, 162, 44, 15
|
PUSHBUTTON "Close", IDOK, 75, 162, 44, 15
|
||||||
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
||||||
|
@ -159,7 +159,7 @@ END
|
||||||
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
||||||
CAPTION "Service Control"
|
CAPTION "Service Control"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | WS_VISIBLE | DS_MODALFRAME
|
||||||
EXSTYLE WS_EX_TOOLWINDOW
|
EXSTYLE WS_EX_TOOLWINDOW
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
||||||
|
|
|
@ -69,7 +69,7 @@ CAPTION "
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Gestionnaire de services v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 130, 26
|
LTEXT "Gestionnaire de services v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 135, 26
|
||||||
PUSHBUTTON "Fermer", IDOK, 75, 162, 44, 15
|
PUSHBUTTON "Fermer", IDOK, 75, 162, 44, 15
|
||||||
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
||||||
|
@ -160,7 +160,7 @@ END
|
||||||
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
||||||
CAPTION "Contrôle du Service"
|
CAPTION "Contrôle du Service"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | WS_VISIBLE | DS_MODALFRAME
|
||||||
EXSTYLE WS_EX_TOOLWINDOW
|
EXSTYLE WS_EX_TOOLWINDOW
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
||||||
|
|
|
@ -68,7 +68,7 @@ CAPTION "Tentang Manajer Layanan"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Manajer Layanan v0.8\nHak Cipta (C) 2005-2007\noleh Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 130, 26
|
LTEXT "Manajer Layanan v0.8\nHak Cipta (C) 2005-2007\noleh Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 135, 26
|
||||||
PUSHBUTTON "Tutup", IDOK, 75, 162, 44, 15
|
PUSHBUTTON "Tutup", IDOK, 75, 162, 44, 15
|
||||||
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
||||||
|
@ -159,7 +159,7 @@ END
|
||||||
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
||||||
CAPTION "Kontrol Layanan"
|
CAPTION "Kontrol Layanan"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | WS_VISIBLE | DS_MODALFRAME
|
||||||
EXSTYLE WS_EX_TOOLWINDOW
|
EXSTYLE WS_EX_TOOLWINDOW
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
||||||
|
|
|
@ -68,7 +68,7 @@ CAPTION "Informazioni su Gestione Servizi"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Gestione Servizi v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@gmail.com)", IDC_STATIC, 48, 7, 130, 26
|
LTEXT "Gestione Servizi v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@gmail.com)", IDC_STATIC, 48, 7, 135, 26
|
||||||
PUSHBUTTON "Chiudi", IDOK, 75, 162, 44, 15
|
PUSHBUTTON "Chiudi", IDOK, 75, 162, 44, 15
|
||||||
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
||||||
|
@ -159,7 +159,7 @@ END
|
||||||
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
||||||
CAPTION "Service Control"
|
CAPTION "Service Control"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | WS_VISIBLE | DS_MODALFRAME
|
||||||
EXSTYLE WS_EX_TOOLWINDOW
|
EXSTYLE WS_EX_TOOLWINDOW
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
||||||
|
|
|
@ -75,7 +75,7 @@ CAPTION "Service Manager - informacje"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Service Manager v0.5.1\nCopyright (C) 2005-2006\nby Ged Murphy (gedmurphy@gmail.com)", IDC_STATIC, 48, 7, 130, 26
|
LTEXT "Service Manager v0.5.1\nCopyright (C) 2005-2006\nby Ged Murphy (gedmurphy@gmail.com)", IDC_STATIC, 48, 7, 135, 26
|
||||||
PUSHBUTTON "Zamknij", IDOK, 75, 162, 44, 15
|
PUSHBUTTON "Zamknij", IDOK, 75, 162, 44, 15
|
||||||
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
||||||
|
@ -165,7 +165,7 @@ END
|
||||||
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
||||||
CAPTION "Us³uga kontrolna"
|
CAPTION "Us³uga kontrolna"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | WS_VISIBLE | DS_MODALFRAME
|
||||||
EXSTYLE WS_EX_TOOLWINDOW
|
EXSTYLE WS_EX_TOOLWINDOW
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
||||||
|
|
|
@ -67,7 +67,7 @@ CAPTION "
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Ìåíåäæåð ñëóæá v0.8\nCopyright (C) 2005-2007\nîò Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 130, 30
|
LTEXT "Ìåíåäæåð ñëóæá v0.8\nCopyright (C) 2005-2007\nîò Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 135, 26
|
||||||
PUSHBUTTON "Çàêðûòü", IDOK, 75, 162, 44, 15
|
PUSHBUTTON "Çàêðûòü", IDOK, 75, 162, 44, 15
|
||||||
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
||||||
|
@ -158,7 +158,7 @@ END
|
||||||
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
||||||
CAPTION "Óïðàâëåíèå ñëóæáàìè"
|
CAPTION "Óïðàâëåíèå ñëóæáàìè"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | WS_VISIBLE | DS_MODALFRAME
|
||||||
EXSTYLE WS_EX_TOOLWINDOW
|
EXSTYLE WS_EX_TOOLWINDOW
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "",IDC_SERVCON_PROGRESS,"msctls_progress32",0x50000000,8,46,238,13
|
CONTROL "",IDC_SERVCON_PROGRESS,"msctls_progress32",0x50000000,8,46,238,13
|
||||||
|
|
|
@ -77,7 +77,7 @@ CAPTION "
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "â»Ãá¡ÃÁ¡ÒúÃÔ¡ÒèѴ¡Òà ÃØè¹ 0.8\nÅÔ¢ÊÔ·¸Ôì (C) 2005-2007\nâ´Â à¡é´ àÁÍÃì¿Õè (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 130, 26
|
LTEXT "â»Ãá¡ÃÁ¡ÒúÃÔ¡ÒèѴ¡Òà ÃØè¹ 0.8\nÅÔ¢ÊÔ·¸Ôì (C) 2005-2007\nâ´Â à¡é´ àÁÍÃì¿Õè (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 135, 26
|
||||||
PUSHBUTTON "»Ô´", IDOK, 75, 162, 44, 15
|
PUSHBUTTON "»Ô´", IDOK, 75, 162, 44, 15
|
||||||
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
||||||
|
@ -168,7 +168,7 @@ END
|
||||||
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
||||||
CAPTION "µÑǤǺ¤ØÁºÃÔ¡ÒÃ"
|
CAPTION "µÑǤǺ¤ØÁºÃÔ¡ÒÃ"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | WS_VISIBLE | DS_MODALFRAME
|
||||||
EXSTYLE WS_EX_TOOLWINDOW
|
EXSTYLE WS_EX_TOOLWINDOW
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
||||||
|
|
|
@ -76,7 +76,7 @@ CAPTION "
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Äèñïåò÷åð êåðóâàííÿ ñëóæáàìè v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 130, 26
|
LTEXT "Äèñïåò÷åð êåðóâàííÿ ñëóæáàìè v0.8\nCopyright (C) 2005-2007\nby Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 135, 26
|
||||||
PUSHBUTTON "Çàêðèòè", IDOK, 75, 162, 44, 15
|
PUSHBUTTON "Çàêðèòè", IDOK, 75, 162, 44, 15
|
||||||
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
ICON IDI_SM_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
||||||
|
@ -167,7 +167,7 @@ END
|
||||||
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
IDD_DLG_PROGRESS DIALOGEX 6,6,255,89
|
||||||
CAPTION "Óïðàâë³ííÿ ñëóæáàìè"
|
CAPTION "Óïðàâë³ííÿ ñëóæáàìè"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | WS_VISIBLE | DS_MODALFRAME
|
||||||
EXSTYLE WS_EX_TOOLWINDOW
|
EXSTYLE WS_EX_TOOLWINDOW
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
CONTROL "", IDC_SERVCON_PROGRESS, "msctls_progress32", 0x50000000, 8, 46, 238, 13
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
|
|
||||||
#include "precomp.h"
|
#include "precomp.h"
|
||||||
|
|
||||||
#define PROGRESSRANGE 8
|
#define PROGRESSRANGE 20
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
CompleteProgressBar(HWND hProgDlg)
|
CompleteProgressBar(HWND hProgDlg)
|
||||||
|
@ -21,10 +21,21 @@ CompleteProgressBar(HWND hProgDlg)
|
||||||
|
|
||||||
if (hProgBar)
|
if (hProgBar)
|
||||||
{
|
{
|
||||||
SendMessage(hProgBar,
|
INT pos = 0;
|
||||||
PBM_DELTAPOS,
|
|
||||||
PROGRESSRANGE,
|
pos = SendMessage(hProgBar,
|
||||||
0);
|
PBM_GETPOS,
|
||||||
|
0,
|
||||||
|
0);
|
||||||
|
|
||||||
|
for (; pos <= PROGRESSRANGE; pos++)
|
||||||
|
{
|
||||||
|
SendMessage(hProgBar,
|
||||||
|
PBM_DELTAPOS,
|
||||||
|
pos,
|
||||||
|
0);
|
||||||
|
Sleep(15);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -82,10 +93,6 @@ ProgressDialogProc(HWND hDlg,
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WM_DESTROY:
|
|
||||||
DestroyWindow(hDlg);
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
@ -109,9 +116,6 @@ CreateProgressDialog(HWND hParent,
|
||||||
(DLGPROC)ProgressDialogProc);
|
(DLGPROC)ProgressDialogProc);
|
||||||
if (hProgDlg != NULL)
|
if (hProgDlg != NULL)
|
||||||
{
|
{
|
||||||
ShowWindow(hProgDlg,
|
|
||||||
SW_SHOW);
|
|
||||||
|
|
||||||
/* write the info to the progress dialog */
|
/* write the info to the progress dialog */
|
||||||
LoadString(hInstance,
|
LoadString(hInstance,
|
||||||
Event,
|
Event,
|
||||||
|
|
|
@ -18,6 +18,7 @@ DoStartService(PMAIN_WND_INFO Info,
|
||||||
SERVICE_STATUS_PROCESS ServiceStatus;
|
SERVICE_STATUS_PROCESS ServiceStatus;
|
||||||
DWORD BytesNeeded = 0;
|
DWORD BytesNeeded = 0;
|
||||||
BOOL bRet = FALSE;
|
BOOL bRet = FALSE;
|
||||||
|
BOOL bDispErr = TRUE;
|
||||||
|
|
||||||
hSCManager = OpenSCManager(NULL,
|
hSCManager = OpenSCManager(NULL,
|
||||||
NULL,
|
NULL,
|
||||||
|
@ -33,6 +34,8 @@ DoStartService(PMAIN_WND_INFO Info,
|
||||||
0,
|
0,
|
||||||
NULL))
|
NULL))
|
||||||
{
|
{
|
||||||
|
bDispErr = FALSE;
|
||||||
|
|
||||||
if (QueryServiceStatusEx(hSc,
|
if (QueryServiceStatusEx(hSc,
|
||||||
SC_STATUS_PROCESS_INFO,
|
SC_STATUS_PROCESS_INFO,
|
||||||
(LPBYTE)&ServiceStatus,
|
(LPBYTE)&ServiceStatus,
|
||||||
|
@ -41,20 +44,14 @@ DoStartService(PMAIN_WND_INFO Info,
|
||||||
{
|
{
|
||||||
DWORD dwStartTickCount = GetTickCount();
|
DWORD dwStartTickCount = GetTickCount();
|
||||||
DWORD dwOldCheckPoint = ServiceStatus.dwCheckPoint;
|
DWORD dwOldCheckPoint = ServiceStatus.dwCheckPoint;
|
||||||
|
DWORD dwMaxWait = 2000 * 60; // wait for 2 mins
|
||||||
|
|
||||||
|
IncrementProgressBar(hProgDlg);
|
||||||
|
|
||||||
while (ServiceStatus.dwCurrentState != SERVICE_RUNNING)
|
while (ServiceStatus.dwCurrentState != SERVICE_RUNNING)
|
||||||
{
|
{
|
||||||
DWORD dwWaitTime = ServiceStatus.dwWaitHint / 10;
|
DWORD dwWaitTime = ServiceStatus.dwWaitHint / 10;
|
||||||
|
|
||||||
if(dwWaitTime < 1000)
|
|
||||||
dwWaitTime = 500;
|
|
||||||
else if (dwWaitTime > 10000)
|
|
||||||
dwWaitTime = 10000;
|
|
||||||
|
|
||||||
IncrementProgressBar(hProgDlg);
|
|
||||||
Sleep(dwWaitTime );
|
|
||||||
IncrementProgressBar(hProgDlg);
|
|
||||||
|
|
||||||
if (!QueryServiceStatusEx(hSc,
|
if (!QueryServiceStatusEx(hSc,
|
||||||
SC_STATUS_PROCESS_INFO,
|
SC_STATUS_PROCESS_INFO,
|
||||||
(LPBYTE)&ServiceStatus,
|
(LPBYTE)&ServiceStatus,
|
||||||
|
@ -73,12 +70,19 @@ DoStartService(PMAIN_WND_INFO Info,
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if(GetTickCount() - dwStartTickCount > ServiceStatus.dwWaitHint)
|
if(GetTickCount() >= dwStartTickCount + dwMaxWait)
|
||||||
{
|
{
|
||||||
/* No progress made within the wait hint */
|
/* give up */
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(dwWaitTime < 200)
|
||||||
|
dwWaitTime = 200;
|
||||||
|
else if (dwWaitTime > 10000)
|
||||||
|
dwWaitTime = 10000;
|
||||||
|
|
||||||
|
Sleep(dwWaitTime);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -92,11 +96,16 @@ DoStartService(PMAIN_WND_INFO Info,
|
||||||
if (ServiceStatus.dwCurrentState == SERVICE_RUNNING)
|
if (ServiceStatus.dwCurrentState == SERVICE_RUNNING)
|
||||||
{
|
{
|
||||||
CompleteProgressBar(hProgDlg);
|
CompleteProgressBar(hProgDlg);
|
||||||
Sleep(1000);
|
Sleep(500);
|
||||||
bRet = TRUE;
|
bRet = TRUE;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
GetError();
|
{
|
||||||
|
if (bDispErr)
|
||||||
|
GetError();
|
||||||
|
else
|
||||||
|
DisplayString(_T("The service failed to start"));
|
||||||
|
}
|
||||||
|
|
||||||
return bRet;
|
return bRet;
|
||||||
}
|
}
|
||||||
|
@ -114,13 +123,12 @@ DoStart(PMAIN_WND_INFO Info)
|
||||||
|
|
||||||
if (hProgDlg)
|
if (hProgDlg)
|
||||||
{
|
{
|
||||||
|
IncrementProgressBar(hProgDlg);
|
||||||
|
|
||||||
bRet = DoStartService(Info,
|
bRet = DoStartService(Info,
|
||||||
hProgDlg);
|
hProgDlg);
|
||||||
|
|
||||||
SendMessage(hProgDlg,
|
DestroyWindow(hProgDlg);
|
||||||
WM_DESTROY,
|
|
||||||
0,
|
|
||||||
0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return bRet;
|
return bRet;
|
||||||
|
|
Loading…
Reference in a new issue