mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 07:46:29 +00:00
- improve the start code
- add an edit button on the properties dialog to give admins the option to modify the service config svn path=/trunk/; revision=28630
This commit is contained in:
parent
c94ecb5367
commit
07c2f6d0c5
15 changed files with 157 additions and 125 deletions
|
@ -74,7 +74,7 @@ BEGIN
|
||||||
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
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_GENERAL DIALOGEX 6,6,253,225
|
IDD_DLG_GENERAL DIALOGEX 6,6,253,232
|
||||||
CAPTION "Îáùî"
|
CAPTION "Îáùî"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
||||||
|
@ -100,6 +100,7 @@ BEGIN
|
||||||
LTEXT "Ìîæåòå äà çàäàäåòå ïóñêîâè óêàçàíèÿ, êîèòî äà ñå ïðèëîæàò ïðè ïóñêàíå íà óñëóãàòà îò òóê.",IDC_STATIC, 6,177,240,15
|
LTEXT "Ìîæåòå äà çàäàäåòå ïóñêîâè óêàçàíèÿ, êîèòî äà ñå ïðèëîæàò ïðè ïóñêàíå íà óñëóãàòà îò òóê.",IDC_STATIC, 6,177,240,15
|
||||||
LTEXT "Ïóñêîâè óêàçàòåëè:", IDC_STATIC, 6, 200, 58, 11
|
LTEXT "Ïóñêîâè óêàçàòåëè:", IDC_STATIC, 6, 200, 58, 11
|
||||||
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||||
|
PUSHBUTTON "Edit", IDC_EDIT, 192, 215, 54, 15, WS_DISABLED
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
||||||
|
|
|
@ -74,7 +74,7 @@ BEGIN
|
||||||
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
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_GENERAL DIALOGEX 6,6,253,225
|
IDD_DLG_GENERAL DIALOGEX 6,6,253,232
|
||||||
CAPTION "Allgemein"
|
CAPTION "Allgemein"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
||||||
|
@ -98,6 +98,7 @@ BEGIN
|
||||||
LTEXT "Sie können die Startparameter angeben, die übernommen werden sollen, wenn der Dienst von hier aus gestartet wird.",IDC_STATIC, 6,177,240,20
|
LTEXT "Sie können die Startparameter angeben, die übernommen werden sollen, wenn der Dienst von hier aus gestartet wird.",IDC_STATIC, 6,177,240,20
|
||||||
LTEXT "Startparameter:", IDC_STATIC, 6, 200, 58, 11
|
LTEXT "Startparameter:", IDC_STATIC, 6, 200, 58, 11
|
||||||
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||||
|
PUSHBUTTON "Edit", IDC_EDIT, 192, 215, 54, 15, WS_DISABLED
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
||||||
|
|
|
@ -74,7 +74,7 @@ BEGIN
|
||||||
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
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_GENERAL DIALOGEX 6,6,253,225
|
IDD_DLG_GENERAL DIALOGEX 6, 6, 253, 232
|
||||||
CAPTION "General"
|
CAPTION "General"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
||||||
|
@ -98,6 +98,7 @@ BEGIN
|
||||||
LTEXT "You can specify the start parameters that apply when you start the service from here.",IDC_STATIC, 6,177,240,15
|
LTEXT "You can specify the start parameters that apply when you start the service from here.",IDC_STATIC, 6,177,240,15
|
||||||
LTEXT "Start parameters:", IDC_STATIC, 6, 200, 58, 11
|
LTEXT "Start parameters:", IDC_STATIC, 6, 200, 58, 11
|
||||||
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||||
|
PUSHBUTTON "Edit", IDC_EDIT, 192, 215, 54, 15, WS_DISABLED
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
||||||
|
|
|
@ -75,7 +75,7 @@ BEGIN
|
||||||
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
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_GENERAL DIALOGEX 6,6,253,225
|
IDD_DLG_GENERAL DIALOGEX 6,6,253,232
|
||||||
CAPTION "Général"
|
CAPTION "Général"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
||||||
|
@ -99,6 +99,7 @@ BEGIN
|
||||||
LTEXT "Vous pouvez définir les paramètres passés au service lorsque vous le démarrez.",IDC_STATIC, 6,177,240,15
|
LTEXT "Vous pouvez définir les paramètres passés au service lorsque vous le démarrez.",IDC_STATIC, 6,177,240,15
|
||||||
LTEXT "Paramètres:", IDC_STATIC, 6, 200, 58, 11
|
LTEXT "Paramètres:", IDC_STATIC, 6, 200, 58, 11
|
||||||
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||||
|
PUSHBUTTON "Edit", IDC_EDIT, 192, 215, 54, 15, WS_DISABLED
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
||||||
|
|
|
@ -74,7 +74,7 @@ BEGIN
|
||||||
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
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_GENERAL DIALOGEX 6,6,253,225
|
IDD_DLG_GENERAL DIALOGEX 6,6,253,232
|
||||||
CAPTION "Umum"
|
CAPTION "Umum"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
||||||
|
@ -98,6 +98,7 @@ BEGIN
|
||||||
LTEXT "Anda menetapkan parameter mulai yang diterapkan ketika anda memulai layanan dari sini.",IDC_STATIC, 6,177,240,15
|
LTEXT "Anda menetapkan parameter mulai yang diterapkan ketika anda memulai layanan dari sini.",IDC_STATIC, 6,177,240,15
|
||||||
LTEXT "Parameter Mulai:", IDC_STATIC, 6, 200, 58, 11
|
LTEXT "Parameter Mulai:", IDC_STATIC, 6, 200, 58, 11
|
||||||
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||||
|
PUSHBUTTON "Edit", IDC_EDIT, 192, 215, 54, 15, WS_DISABLED
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
||||||
|
|
|
@ -74,7 +74,7 @@ BEGIN
|
||||||
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
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_GENERAL DIALOGEX 6,6,253,225
|
IDD_DLG_GENERAL DIALOGEX 6,6,253,232
|
||||||
CAPTION "General"
|
CAPTION "General"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
||||||
|
@ -98,6 +98,7 @@ BEGIN
|
||||||
LTEXT "Puoi indicarei parametri in uso quando il servizio è avviato da qui.",IDC_STATIC, 6,177,240,15
|
LTEXT "Puoi indicarei parametri in uso quando il servizio è avviato da qui.",IDC_STATIC, 6,177,240,15
|
||||||
LTEXT "Parametri di avvio:", IDC_STATIC, 6, 200, 58, 11
|
LTEXT "Parametri di avvio:", IDC_STATIC, 6, 200, 58, 11
|
||||||
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||||
|
PUSHBUTTON "Edit", IDC_EDIT, 192, 215, 54, 15, WS_DISABLED
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
||||||
|
|
|
@ -81,7 +81,7 @@ BEGIN
|
||||||
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
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_GENERAL DIALOGEX 6,6,253,225
|
IDD_DLG_GENERAL DIALOGEX 6,6,253,232
|
||||||
CAPTION "Ogólny"
|
CAPTION "Ogólny"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
||||||
|
@ -105,6 +105,7 @@ BEGIN
|
||||||
LTEXT "Mo¿esz okreœli parametry pocz¹tkowe, które bêd¹ u¿yte przy uruchomieniu us³ugi z tego miejsca.",IDC_STATIC, 6,177,240,15
|
LTEXT "Mo¿esz okreœli parametry pocz¹tkowe, które bêd¹ u¿yte przy uruchomieniu us³ugi z tego miejsca.",IDC_STATIC, 6,177,240,15
|
||||||
LTEXT "Parametry uruchomienia:", IDC_STATIC, 6, 200, 58, 11
|
LTEXT "Parametry uruchomienia:", IDC_STATIC, 6, 200, 58, 11
|
||||||
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||||
|
PUSHBUTTON "Edit", IDC_EDIT, 192, 215, 54, 15, WS_DISABLED
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
||||||
|
|
|
@ -73,7 +73,7 @@ BEGIN
|
||||||
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
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_GENERAL DIALOGEX 6,6,253,225
|
IDD_DLG_GENERAL DIALOGEX 6,6,253,232
|
||||||
CAPTION "Îáùèå"
|
CAPTION "Îáùèå"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
||||||
|
@ -97,6 +97,7 @@ BEGIN
|
||||||
LTEXT "Ìîæíî óêàçàòü ïàðàìåòðû çàïóñêà, ïðèìåíÿåìûå ïðè çàïóñêå ñëóæáû èç ýòîãî êàòàëîãà.",IDC_STATIC, 6,177,240,15
|
LTEXT "Ìîæíî óêàçàòü ïàðàìåòðû çàïóñêà, ïðèìåíÿåìûå ïðè çàïóñêå ñëóæáû èç ýòîãî êàòàëîãà.",IDC_STATIC, 6,177,240,15
|
||||||
LTEXT "Ïàðàìåòðû çàïóñêà:", IDC_STATIC, 6, 200, 73, 11
|
LTEXT "Ïàðàìåòðû çàïóñêà:", IDC_STATIC, 6, 200, 73, 11
|
||||||
EDITTEXT IDC_START_PARAM, 78, 199, 168, 11, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
EDITTEXT IDC_START_PARAM, 78, 199, 168, 11, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||||
|
PUSHBUTTON "Edit", IDC_EDIT, 192, 215, 54, 15, WS_DISABLED
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
||||||
|
|
|
@ -83,7 +83,7 @@ BEGIN
|
||||||
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
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_GENERAL DIALOGEX 6,6,253,225
|
IDD_DLG_GENERAL DIALOGEX 6,6,253,232
|
||||||
CAPTION "费枨浠"
|
CAPTION "费枨浠"
|
||||||
FONT 8, "MS Shell Dlg",0,0
|
FONT 8, "MS Shell Dlg",0,0
|
||||||
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
STYLE WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP
|
||||||
|
@ -107,6 +107,7 @@ BEGIN
|
||||||
LTEXT "へ呈伊颐丁铀勾よ业亚峄玫枰ф愎低灌迷枇甸埂颐悛椐夜 嗔阻亭爻嗝澡零碎好浴颐氛璧莽拐<E88EBD>.",IDC_STATIC, 6,177,240,15
|
LTEXT "へ呈伊颐丁铀勾よ业亚峄玫枰ф愎低灌迷枇甸埂颐悛椐夜 嗔阻亭爻嗝澡零碎好浴颐氛璧莽拐<E88EBD>.",IDC_STATIC, 6,177,240,15
|
||||||
LTEXT "嗝澡恋楣よ业亚峄玫枰ф:", IDC_STATIC, 6, 200, 58, 11
|
LTEXT "嗝澡恋楣よ业亚峄玫枰ф:", IDC_STATIC, 6, 200, 58, 11
|
||||||
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
EDITTEXT IDC_START_PARAM, 68, 199, 178, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||||
|
PUSHBUTTON "Edit", IDC_EDIT, 192, 215, 54, 15, WS_DISABLED
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
IDD_DLG_DEPEND DIALOGEX 6,6,253,225
|
||||||
|
|
|
@ -122,7 +122,7 @@ UpdateMainStatusBar(PMAIN_WND_INFO Info)
|
||||||
{
|
{
|
||||||
SendMessage(Info->hStatus,
|
SendMessage(Info->hStatus,
|
||||||
SB_SIMPLE,
|
SB_SIMPLE,
|
||||||
(WPARAM)Info->InMenuLoop,
|
(WPARAM)Info->bInMenuLoop,
|
||||||
0);
|
0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -624,6 +624,8 @@ InitMainWnd(PMAIN_WND_INFO Info)
|
||||||
Info->hShortcutMenu = GetSubMenu(Info->hShortcutMenu,
|
Info->hShortcutMenu = GetSubMenu(Info->hShortcutMenu,
|
||||||
0);
|
0);
|
||||||
|
|
||||||
|
Info->bIsUserAnAdmin = IsUserAnAdmin();
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1055,14 +1057,14 @@ MainWndProc(HWND hwnd,
|
||||||
|
|
||||||
case WM_ENTERMENULOOP:
|
case WM_ENTERMENULOOP:
|
||||||
{
|
{
|
||||||
Info->InMenuLoop = TRUE;
|
Info->bInMenuLoop = TRUE;
|
||||||
UpdateMainStatusBar(Info);
|
UpdateMainStatusBar(Info);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case WM_EXITMENULOOP:
|
case WM_EXITMENULOOP:
|
||||||
{
|
{
|
||||||
Info->InMenuLoop = FALSE;
|
Info->bInMenuLoop = FALSE;
|
||||||
UpdateMainStatusBar(Info);
|
UpdateMainStatusBar(Info);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <tchar.h>
|
#include <tchar.h>
|
||||||
#include <commctrl.h>
|
#include <commctrl.h>
|
||||||
|
#include <shlobj.h>
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
|
@ -30,7 +31,8 @@ typedef struct _MAIN_WND_INFO
|
||||||
|
|
||||||
INT SelectedItem;/* selection number in the list view */
|
INT SelectedItem;/* selection number in the list view */
|
||||||
BOOL bDlgOpen;
|
BOOL bDlgOpen;
|
||||||
BOOL InMenuLoop;
|
BOOL bInMenuLoop;
|
||||||
|
BOOL bIsUserAnAdmin;
|
||||||
|
|
||||||
} MAIN_WND_INFO, *PMAIN_WND_INFO;
|
} MAIN_WND_INFO, *PMAIN_WND_INFO;
|
||||||
|
|
||||||
|
@ -72,6 +74,7 @@ VOID CompleteProgressBar(HWND hProgDlg);
|
||||||
/* query.c */
|
/* query.c */
|
||||||
ENUM_SERVICE_STATUS_PROCESS* GetSelectedService(PMAIN_WND_INFO Info);
|
ENUM_SERVICE_STATUS_PROCESS* GetSelectedService(PMAIN_WND_INFO Info);
|
||||||
LPQUERY_SERVICE_CONFIG GetServiceConfig(LPTSTR lpServiceName);
|
LPQUERY_SERVICE_CONFIG GetServiceConfig(LPTSTR lpServiceName);
|
||||||
|
VOID SetServiceConfig(LPQUERY_SERVICE_CONFIG);
|
||||||
LPTSTR GetServiceDescription(LPTSTR lpServiceName);
|
LPTSTR GetServiceDescription(LPTSTR lpServiceName);
|
||||||
LPTSTR GetExecutablePath(LPTSTR lpServiceName);
|
LPTSTR GetExecutablePath(LPTSTR lpServiceName);
|
||||||
BOOL RefreshServiceList(PMAIN_WND_INFO Info);
|
BOOL RefreshServiceList(PMAIN_WND_INFO Info);
|
||||||
|
|
|
@ -190,7 +190,39 @@ GetDlgInfo(PSERVICEPROPSHEET dlgInfo,
|
||||||
0,
|
0,
|
||||||
(LPARAM)szServiceStatus);
|
(LPARAM)szServiceStatus);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (dlgInfo->Info->bIsUserAnAdmin)
|
||||||
|
{
|
||||||
|
HWND hEdit = GetDlgItem(hwndDlg,
|
||||||
|
IDC_EDIT);
|
||||||
|
EnableWindow(hEdit,
|
||||||
|
TRUE);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
SaveDlgInfo(PSERVICEPROPSHEET dlgInfo,
|
||||||
|
HWND hwndDlg)
|
||||||
|
{
|
||||||
|
LPQUERY_SERVICE_CONFIG pServiceConfig = NULL;
|
||||||
|
HWND hList;
|
||||||
|
DWORD StartUp;
|
||||||
|
|
||||||
|
hList = GetDlgItem(hwndDlg, IDC_START_TYPE);
|
||||||
|
|
||||||
|
StartUp = SendMessage(hList,
|
||||||
|
CB_GETCURSEL,
|
||||||
|
0,
|
||||||
|
0);
|
||||||
|
|
||||||
|
switch (StartUp)
|
||||||
|
{
|
||||||
|
case 0: pServiceConfig->dwStartType = SERVICE_AUTO_START; break;
|
||||||
|
case 1: pServiceConfig->dwStartType = SERVICE_DEMAND_START; break;
|
||||||
|
case 2: pServiceConfig->dwStartType = SERVICE_DISABLED; break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -258,15 +290,26 @@ GeneralPageProc(HWND hwndDlg,
|
||||||
//SendMessage(Info->hMainWnd, WM_COMMAND, ID_RESUME, 0);
|
//SendMessage(Info->hMainWnd, WM_COMMAND, ID_RESUME, 0);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case IDC_EDIT:
|
||||||
|
{
|
||||||
|
HWND hName, hDesc, hExePath;
|
||||||
|
|
||||||
|
hName = GetDlgItem(hwndDlg, IDC_DISP_NAME);
|
||||||
|
hDesc = GetDlgItem(hwndDlg, IDC_DESCRIPTION);
|
||||||
|
hExePath = GetDlgItem(hwndDlg, IDC_EXEPATH);
|
||||||
|
|
||||||
|
SendMessage(hName, EM_SETREADONLY, FALSE, 0);
|
||||||
|
SendMessage(hDesc, EM_SETREADONLY, FALSE, 0);
|
||||||
|
SendMessage(hExePath, EM_SETREADONLY, FALSE, 0);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case IDC_START_PARAM:
|
case IDC_START_PARAM:
|
||||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WM_DESTROY:
|
|
||||||
break;
|
|
||||||
|
|
||||||
case WM_NOTIFY:
|
case WM_NOTIFY:
|
||||||
{
|
{
|
||||||
LPNMHDR lpnm = (LPNMHDR)lParam;
|
LPNMHDR lpnm = (LPNMHDR)lParam;
|
||||||
|
@ -296,13 +339,13 @@ DependanciesPageProc(HWND hwndDlg,
|
||||||
WPARAM wParam,
|
WPARAM wParam,
|
||||||
LPARAM lParam)
|
LPARAM lParam)
|
||||||
{
|
{
|
||||||
PMAIN_WND_INFO Info;
|
PSERVICEPROPSHEET dlgInfo;
|
||||||
|
|
||||||
/* Get the window context */
|
/* Get the window context */
|
||||||
Info = (PMAIN_WND_INFO)GetWindowLongPtr(hwndDlg,
|
dlgInfo = (PSERVICEPROPSHEET)GetWindowLongPtr(hwndDlg,
|
||||||
GWLP_USERDATA);
|
GWLP_USERDATA);
|
||||||
|
|
||||||
if (Info == NULL && uMsg != WM_INITDIALOG)
|
if (dlgInfo == NULL && uMsg != WM_INITDIALOG)
|
||||||
{
|
{
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
@ -311,12 +354,12 @@ DependanciesPageProc(HWND hwndDlg,
|
||||||
{
|
{
|
||||||
case WM_INITDIALOG:
|
case WM_INITDIALOG:
|
||||||
{
|
{
|
||||||
Info = (PMAIN_WND_INFO)(((LPPROPSHEETPAGE)lParam)->lParam);
|
dlgInfo = (PSERVICEPROPSHEET)(((LPPROPSHEETPAGE)lParam)->lParam);
|
||||||
if (Info != NULL)
|
if (dlgInfo != NULL)
|
||||||
{
|
{
|
||||||
SetWindowLongPtr(hwndDlg,
|
SetWindowLongPtr(hwndDlg,
|
||||||
GWLP_USERDATA,
|
GWLP_USERDATA,
|
||||||
(LONG_PTR)Info);
|
(LONG_PTR)dlgInfo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -327,21 +370,6 @@ DependanciesPageProc(HWND hwndDlg,
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WM_DESTROY:
|
|
||||||
break;
|
|
||||||
|
|
||||||
case WM_NOTIFY:
|
|
||||||
{
|
|
||||||
LPNMHDR lpnm = (LPNMHDR)lParam;
|
|
||||||
|
|
||||||
switch (lpnm->code)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
@ -404,7 +432,7 @@ OpenPropSheet(PMAIN_WND_INFO Info)
|
||||||
|
|
||||||
ZeroMemory(&psh, sizeof(PROPSHEETHEADER));
|
ZeroMemory(&psh, sizeof(PROPSHEETHEADER));
|
||||||
psh.dwSize = sizeof(PROPSHEETHEADER);
|
psh.dwSize = sizeof(PROPSHEETHEADER);
|
||||||
psh.dwFlags = PSH_PROPSHEETPAGE | PSH_PROPTITLE | PSH_USECALLBACK;
|
psh.dwFlags = PSH_PROPSHEETPAGE | PSH_PROPTITLE | PSH_USECALLBACK;// | PSH_MODELESS;
|
||||||
psh.hwndParent = Info->hMainWnd;
|
psh.hwndParent = Info->hMainWnd;
|
||||||
psh.hInstance = hInstance;
|
psh.hInstance = hInstance;
|
||||||
psh.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_SM_ICON));
|
psh.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_SM_ICON));
|
||||||
|
|
|
@ -90,6 +90,13 @@ cleanup:
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SetServiceConfig(LPQUERY_SERVICE_CONFIG pServiceConfig)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
LPTSTR
|
LPTSTR
|
||||||
GetServiceDescription(LPTSTR lpServiceName)
|
GetServiceDescription(LPTSTR lpServiceName)
|
||||||
{
|
{
|
||||||
|
@ -162,7 +169,6 @@ cleanup:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static BOOL
|
static BOOL
|
||||||
GetServiceList(PMAIN_WND_INFO Info,
|
GetServiceList(PMAIN_WND_INFO Info,
|
||||||
DWORD *NumServices)
|
DWORD *NumServices)
|
||||||
|
|
|
@ -132,6 +132,7 @@
|
||||||
#define IDC_PAUSE 10151
|
#define IDC_PAUSE 10151
|
||||||
#define IDC_RESUME 10161
|
#define IDC_RESUME 10161
|
||||||
#define IDC_START_PARAM 10191
|
#define IDC_START_PARAM 10191
|
||||||
|
#define IDC_EDIT 10192
|
||||||
|
|
||||||
/* dependancies dialog */
|
/* dependancies dialog */
|
||||||
#define IDD_DLG_DEPEND 20001
|
#define IDD_DLG_DEPEND 20001
|
||||||
|
|
|
@ -19,83 +19,58 @@ DoStartService(PMAIN_WND_INFO Info,
|
||||||
DWORD BytesNeeded = 0;
|
DWORD BytesNeeded = 0;
|
||||||
INT ArgCount = 0;
|
INT ArgCount = 0;
|
||||||
DWORD dwStartTickCount, dwOldCheckPoint;
|
DWORD dwStartTickCount, dwOldCheckPoint;
|
||||||
|
BOOL bRet = FALSE;
|
||||||
|
|
||||||
/* 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();
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* get a handle to the service requested for starting */
|
|
||||||
hSc = OpenService(hSCManager,
|
hSc = OpenService(hSCManager,
|
||||||
Info->pCurrentService->lpServiceName,
|
Info->pCurrentService->lpServiceName,
|
||||||
SERVICE_ALL_ACCESS);
|
SERVICE_ALL_ACCESS);
|
||||||
if (hSc == NULL)
|
if (hSc != NULL)
|
||||||
{
|
{
|
||||||
GetError();
|
if (StartService(hSc,
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* start the service opened */
|
|
||||||
if (! StartService(hSc,
|
|
||||||
ArgCount,
|
ArgCount,
|
||||||
NULL))
|
NULL))
|
||||||
{
|
{
|
||||||
GetError();
|
if (QueryServiceStatusEx(hSc,
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* query the state of the service */
|
|
||||||
if (! QueryServiceStatusEx(hSc,
|
|
||||||
SC_STATUS_PROCESS_INFO,
|
SC_STATUS_PROCESS_INFO,
|
||||||
(LPBYTE)&ServiceStatus,
|
(LPBYTE)&ServiceStatus,
|
||||||
sizeof(SERVICE_STATUS_PROCESS),
|
sizeof(SERVICE_STATUS_PROCESS),
|
||||||
&BytesNeeded))
|
&BytesNeeded))
|
||||||
{
|
{
|
||||||
GetError();
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Save the tick count and initial checkpoint. */
|
|
||||||
dwStartTickCount = GetTickCount();
|
dwStartTickCount = GetTickCount();
|
||||||
dwOldCheckPoint = ServiceStatus.dwCheckPoint;
|
dwOldCheckPoint = ServiceStatus.dwCheckPoint;
|
||||||
|
|
||||||
/* loop whilst service is not running */
|
|
||||||
/* FIXME: needs more control adding. 'Loop' is temparary */
|
|
||||||
while (ServiceStatus.dwCurrentState != SERVICE_RUNNING)
|
while (ServiceStatus.dwCurrentState != SERVICE_RUNNING)
|
||||||
{
|
{
|
||||||
DWORD dwWaitTime;
|
DWORD dwWaitTime;
|
||||||
|
|
||||||
dwWaitTime = ServiceStatus.dwWaitHint / 10;
|
dwWaitTime = ServiceStatus.dwWaitHint / 10;
|
||||||
|
|
||||||
if( dwWaitTime < 500 )
|
if(dwWaitTime < 1000)
|
||||||
dwWaitTime = 500;
|
dwWaitTime = 500;
|
||||||
else if ( dwWaitTime > 5000 )
|
else if (dwWaitTime > 10000)
|
||||||
dwWaitTime = 5000;
|
dwWaitTime = 10000;
|
||||||
|
|
||||||
IncrementProgressBar(hProgDlg);
|
IncrementProgressBar(hProgDlg);
|
||||||
|
Sleep(dwWaitTime );
|
||||||
|
IncrementProgressBar(hProgDlg);
|
||||||
|
|
||||||
/* wait before checking status */
|
|
||||||
Sleep(ServiceStatus.dwWaitHint / 8);
|
|
||||||
|
|
||||||
/* check status again */
|
|
||||||
if (!QueryServiceStatusEx(hSc,
|
if (!QueryServiceStatusEx(hSc,
|
||||||
SC_STATUS_PROCESS_INFO,
|
SC_STATUS_PROCESS_INFO,
|
||||||
(LPBYTE)&ServiceStatus,
|
(LPBYTE)&ServiceStatus,
|
||||||
sizeof(SERVICE_STATUS_PROCESS),
|
sizeof(SERVICE_STATUS_PROCESS),
|
||||||
&BytesNeeded))
|
&BytesNeeded))
|
||||||
{
|
{
|
||||||
GetError();
|
break;
|
||||||
return FALSE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ServiceStatus.dwCheckPoint > dwOldCheckPoint)
|
if (ServiceStatus.dwCheckPoint > dwOldCheckPoint)
|
||||||
{
|
{
|
||||||
/* The service is making progress. increment the progress bar */
|
/* The service is making progress, increment the progress bar */
|
||||||
IncrementProgressBar(hProgDlg);
|
IncrementProgressBar(hProgDlg);
|
||||||
dwStartTickCount = GetTickCount();
|
dwStartTickCount = GetTickCount();
|
||||||
dwOldCheckPoint = ServiceStatus.dwCheckPoint;
|
dwOldCheckPoint = ServiceStatus.dwCheckPoint;
|
||||||
|
@ -109,17 +84,25 @@ DoStartService(PMAIN_WND_INFO Info,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
CloseServiceHandle(hSc);
|
CloseServiceHandle(hSc);
|
||||||
|
}
|
||||||
|
|
||||||
|
CloseServiceHandle(hSCManager);
|
||||||
|
}
|
||||||
|
|
||||||
if (ServiceStatus.dwCurrentState == SERVICE_RUNNING)
|
if (ServiceStatus.dwCurrentState == SERVICE_RUNNING)
|
||||||
{
|
{
|
||||||
CompleteProgressBar(hProgDlg);
|
CompleteProgressBar(hProgDlg);
|
||||||
Sleep(1000);
|
Sleep(1000);
|
||||||
return TRUE;
|
bRet = TRUE;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return FALSE;
|
GetError();
|
||||||
|
|
||||||
|
return bRet;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue