diff --git a/reactos/base/applications/msconfig_new/CMakeLists.txt b/reactos/base/applications/msconfig_new/CMakeLists.txt index 44a581293fc..6a11f88ee8a 100644 --- a/reactos/base/applications/msconfig_new/CMakeLists.txt +++ b/reactos/base/applications/msconfig_new/CMakeLists.txt @@ -1,12 +1,13 @@ PROJECT(msconfig_new) -set_cpp(WITH_RUNTIME) +set_cpp(WITH_RUNTIME WITH_EXCEPTIONS) include_directories( . comctl32ex - ${REACTOS_SOURCE_DIR}/include/c++) + ${REACTOS_SOURCE_DIR}/include/c++ + ${REACTOS_SOURCE_DIR}/lib/atl) list(APPEND C_SOURCE comctl32ex/listviewfuncs.c @@ -15,13 +16,14 @@ list(APPEND C_SOURCE freeldrpage.c generalpage.c msconfig.c - # srvpage.c + regutils.c # systempage.c # startuppage.c stringutils.c utils.c) list(APPEND CPP_SOURCE + srvpage.cpp toolspage.cpp xmldomparser.cpp precomp.h) @@ -30,6 +32,6 @@ add_rc_deps(msconfig.rc ${CMAKE_CURRENT_SOURCE_DIR}/res/msconfig.ico) add_executable(msconfig_new ${C_SOURCE} ${CPP_SOURCE} msconfig.rc) add_pch(msconfig_new precomp.h CPP_SOURCE) set_module_type(msconfig_new win32gui UNICODE) -target_link_libraries(msconfig_new comsupp) +target_link_libraries(msconfig_new atlnew comsupp) add_importlibs(msconfig_new user32 gdi32 comctl32 comdlg32 advapi32 version ole32 oleaut32 msxml3 shell32 shlwapi msvcrt kernel32) add_cd_file(TARGET msconfig_new DESTINATION reactos/system32 FOR all) diff --git a/reactos/base/applications/msconfig_new/fileextractdialog.c b/reactos/base/applications/msconfig_new/fileextractdialog.c index a16f8475c1b..2d7a444822a 100644 --- a/reactos/base/applications/msconfig_new/fileextractdialog.c +++ b/reactos/base/applications/msconfig_new/fileextractdialog.c @@ -77,7 +77,7 @@ FileExtractDialogWndProc(HWND hDlg, cabPathNum = GetWindowTextLengthW(GetDlgItem(hDlg, IDC_DRP_CAB_FILE)) + 1; szCabPathFileName = (LPWSTR)MemAlloc(0, cabPathNum * sizeof(WCHAR)); GetDlgItemText(hDlg, IDC_DRP_CAB_FILE, szCabPathFileName, (int)cabPathNum); - + fileNameNum = GetWindowTextLengthW(GetDlgItem(hDlg, IDC_TXT_FILE_TO_RESTORE)) + 1; szFileName = (LPWSTR)MemAlloc(0, fileNameNum * sizeof(WCHAR)); GetDlgItemText(hDlg, IDC_TXT_FILE_TO_RESTORE, szFileName, (int)fileNameNum); diff --git a/reactos/base/applications/msconfig_new/freeldrpage.c b/reactos/base/applications/msconfig_new/freeldrpage.c index 6c06e947e2f..fd1497e5280 100644 --- a/reactos/base/applications/msconfig_new/freeldrpage.c +++ b/reactos/base/applications/msconfig_new/freeldrpage.c @@ -159,7 +159,7 @@ FreeLdrPageWndProc(HWND hDlg, switch (LOWORD(wParam)) { case IDC_BTN_ADVANCED_OPTIONS: - // DialogBox(hInst, MAKEINTRESOURCE(IDD_FREELDR_ADVANCED_DIALOG), hDlg /* hMainWnd */, NULL /*FileExtractDialogWndProc*/); + // DialogBoxW(hInst, MAKEINTRESOURCEW(IDD_FREELDR_ADVANCED_DIALOG), hDlg /* hMainWnd */, NULL /*FileExtractDialogWndProc*/); break; // default: diff --git a/reactos/base/applications/msconfig_new/generalpage.c b/reactos/base/applications/msconfig_new/generalpage.c index f31dd807e11..a00944be45f 100644 --- a/reactos/base/applications/msconfig_new/generalpage.c +++ b/reactos/base/applications/msconfig_new/generalpage.c @@ -170,7 +170,7 @@ GeneralPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) MessageBoxW(hGeneralPage, L"Help not implemented yet!", L"Help", MB_ICONINFORMATION | MB_OK); return TRUE; } - + case PSN_KILLACTIVE: // Is going to lose activation. { // Changes are always valid of course. diff --git a/reactos/base/applications/msconfig_new/lang/bg-BG.rc b/reactos/base/applications/msconfig_new/lang/bg-BG.rc index c00a87bd5df..ea4120760fe 100644 --- a/reactos/base/applications/msconfig_new/lang/bg-BG.rc +++ b/reactos/base/applications/msconfig_new/lang/bg-BG.rc @@ -76,14 +76,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Услуги" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Activate all", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Изключване на всички", IDC_BTN_SERVICES_DEACTIVATE, 272, 155, 83, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Activate all", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Deactivate all", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -114,7 +117,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -138,8 +141,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "Добре", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Отказ", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "Добре", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Отказ", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -161,6 +164,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Приложение за настройка на системата" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Приложение за настройка на системата" @@ -172,11 +186,11 @@ STRINGTABLE BEGIN IDS_YES "Да" IDS_NO "No" + IDS_UNKNOWN "Неизвестен" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Услуги" IDS_TAB_STARTUP "Запуск" END @@ -186,6 +200,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Задължително" IDS_SERVICES_COLUMN_VENDOR "Производител" IDS_SERVICES_COLUMN_STATUS "Състояние" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -202,5 +217,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Пуснат" IDS_SERVICES_STATUS_STOPPED "Спрян" - IDS_SERVICES_UNKNOWN "Неизвестен" END diff --git a/reactos/base/applications/msconfig_new/lang/ca-ES.rc b/reactos/base/applications/msconfig_new/lang/ca-ES.rc index a4a018d2651..e490a12aa0d 100644 --- a/reactos/base/applications/msconfig_new/lang/ca-ES.rc +++ b/reactos/base/applications/msconfig_new/lang/ca-ES.rc @@ -76,14 +76,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Serveis" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "A&ctivar-ho tot", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Deactivar-ho tot", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "A&ctivar-ho tot", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Deactivar-ho tot", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -114,7 +117,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -138,8 +141,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "Acceptar", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Cancel·lar", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "Acceptar", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Cancel·lar", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -161,6 +164,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Programa de configuracio del sistema" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Programa de configuracio del sistema" @@ -172,11 +186,11 @@ STRINGTABLE BEGIN IDS_YES "Si" IDS_NO "No" + IDS_UNKNOWN "Indeterminat" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Serveis" IDS_TAB_STARTUP "Arrencada" END @@ -186,6 +200,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Obligatori" IDS_SERVICES_COLUMN_VENDOR "Fabricant" IDS_SERVICES_COLUMN_STATUS "Estat" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -202,5 +217,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "En marxa" IDS_SERVICES_STATUS_STOPPED "Parat" - IDS_SERVICES_UNKNOWN "Indeterminat" END diff --git a/reactos/base/applications/msconfig_new/lang/cs-CZ.rc b/reactos/base/applications/msconfig_new/lang/cs-CZ.rc index 8c4d62ee19a..cb7bdd0ca46 100644 --- a/reactos/base/applications/msconfig_new/lang/cs-CZ.rc +++ b/reactos/base/applications/msconfig_new/lang/cs-CZ.rc @@ -82,14 +82,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Služby" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Povolit vše", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Zakázat vše", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Povolit vše", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Zakázat vše", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -120,7 +123,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -144,8 +147,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Storno", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Storno", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -167,6 +170,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Nástroj pro konfiguraci systému" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Nástroj pro konfiguraci systému" @@ -178,11 +192,11 @@ STRINGTABLE BEGIN IDS_YES "Ano" IDS_NO "No" + IDS_UNKNOWN "Neznámý" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Služby" IDS_TAB_STARTUP "Po spuštění" END @@ -192,6 +206,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Požadováno" IDS_SERVICES_COLUMN_VENDOR "Výrobce" IDS_SERVICES_COLUMN_STATUS "Stav" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -208,5 +223,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Spuštěno" IDS_SERVICES_STATUS_STOPPED "Zastaveno" - IDS_SERVICES_UNKNOWN "Neznámý" END diff --git a/reactos/base/applications/msconfig_new/lang/de-DE.rc b/reactos/base/applications/msconfig_new/lang/de-DE.rc index 73e04526d42..bf851799c92 100644 --- a/reactos/base/applications/msconfig_new/lang/de-DE.rc +++ b/reactos/base/applications/msconfig_new/lang/de-DE.rc @@ -76,14 +76,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Dienste" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "Alle &aktivieren", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "Alle &deaktivieren", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "Alle &aktivieren", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "Alle &deaktivieren", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -114,7 +117,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -138,8 +141,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Abbrechen", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Abbrechen", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -161,6 +164,17 @@ BEGIN PUSHBUTTON "Abbrechen", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Systemkonfiguration" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Systemkonfiguration" @@ -172,11 +186,11 @@ STRINGTABLE BEGIN IDS_YES "Ja" IDS_NO "No" + IDS_UNKNOWN "Unbekannt" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Dienste" IDS_TAB_STARTUP "Systemstart" END @@ -186,6 +200,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Erforderlich" IDS_SERVICES_COLUMN_VENDOR "Hersteller" IDS_SERVICES_COLUMN_STATUS "Status" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -202,5 +217,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Gestartet" IDS_SERVICES_STATUS_STOPPED "Beendet" - IDS_SERVICES_UNKNOWN "Unbekannt" END diff --git a/reactos/base/applications/msconfig_new/lang/el-GR.rc b/reactos/base/applications/msconfig_new/lang/el-GR.rc index 66a1a0cd10b..e49853a6f3c 100644 --- a/reactos/base/applications/msconfig_new/lang/el-GR.rc +++ b/reactos/base/applications/msconfig_new/lang/el-GR.rc @@ -76,14 +76,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Υπηρεσίες" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Ενεργοποίηση όλων", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Απενεργοποίηση όλων", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Ενεργοποίηση όλων", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Απενεργοποίηση όλων", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -114,7 +117,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -138,8 +141,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Ακύρωση", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Ακύρωση", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -161,6 +164,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Πρόγραμμα παραμετροποίησης συστήματος" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Πρόγραμμα παραμετροποίησης συστήματος" @@ -172,11 +186,11 @@ STRINGTABLE BEGIN IDS_YES "Ναι" IDS_NO "No" + IDS_UNKNOWN "Άγνωστη" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Υπηρεσίες" IDS_TAB_STARTUP "Εκκίνηση" END @@ -186,6 +200,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Απαραίτητο" IDS_SERVICES_COLUMN_VENDOR "Vendor" IDS_SERVICES_COLUMN_STATUS "Κατάσταση" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -202,5 +217,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Εκτελείται" IDS_SERVICES_STATUS_STOPPED "Τερματίστηκε" - IDS_SERVICES_UNKNOWN "Άγνωστη" END diff --git a/reactos/base/applications/msconfig_new/lang/en-US.rc b/reactos/base/applications/msconfig_new/lang/en-US.rc index 9c739fa65f9..9f36ec8f819 100644 --- a/reactos/base/applications/msconfig_new/lang/en-US.rc +++ b/reactos/base/applications/msconfig_new/lang/en-US.rc @@ -76,14 +76,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Services" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Activate all", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Deactivate all", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Activate all", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Deactivate all", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -114,7 +117,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -138,8 +141,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Cancel", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Cancel", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -161,6 +164,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "System Configuration Program" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "System Configuration Program" @@ -172,11 +186,11 @@ STRINGTABLE BEGIN IDS_YES "Yes" IDS_NO "No" + IDS_UNKNOWN "Unknown" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Services" IDS_TAB_STARTUP "Startup" END @@ -186,6 +200,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Required" IDS_SERVICES_COLUMN_VENDOR "Vendor" IDS_SERVICES_COLUMN_STATUS "Status" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -202,5 +217,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Running" IDS_SERVICES_STATUS_STOPPED "Stopped" - IDS_SERVICES_UNKNOWN "Unknown" END diff --git a/reactos/base/applications/msconfig_new/lang/es-ES.rc b/reactos/base/applications/msconfig_new/lang/es-ES.rc index 98e83aa6d40..76ddab90838 100644 --- a/reactos/base/applications/msconfig_new/lang/es-ES.rc +++ b/reactos/base/applications/msconfig_new/lang/es-ES.rc @@ -79,14 +79,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Servicios" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Activar todo", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Desactivar todo", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Activar todo", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Desactivar todo", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -117,7 +120,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -141,8 +144,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "Aceptar", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Cancelar", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "Aceptar", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Cancelar", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -164,6 +167,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Utilidad de configuración del sistema" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Utilidad de configuración del sistema" @@ -175,11 +189,11 @@ STRINGTABLE BEGIN IDS_YES "Sí" IDS_NO "No" + IDS_UNKNOWN "Desconocido" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Servicios" IDS_TAB_STARTUP "Inicio" END @@ -189,6 +203,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Necesario" IDS_SERVICES_COLUMN_VENDOR "Fabricante" IDS_SERVICES_COLUMN_STATUS "Estado" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -205,5 +220,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "En ejecución" IDS_SERVICES_STATUS_STOPPED "Detenido" - IDS_SERVICES_UNKNOWN "Desconocido" END diff --git a/reactos/base/applications/msconfig_new/lang/fr-FR.rc b/reactos/base/applications/msconfig_new/lang/fr-FR.rc index de4dee4cb0f..bb7fa59822a 100644 --- a/reactos/base/applications/msconfig_new/lang/fr-FR.rc +++ b/reactos/base/applications/msconfig_new/lang/fr-FR.rc @@ -76,14 +76,17 @@ BEGIN LTEXT "&Commande sélectionnée :", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Services" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Activer tout", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Désactiver tout", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Activer tout", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Désactiver tout", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Masquer tous les services %s", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Veuiller noter que certains services %s sécurisés peuvent ne pas pouvoir être désactivés.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -114,7 +117,7 @@ BEGIN LTEXT "secondes", IDC_STATIC, 330, 104, 31, 10 CONTROL "Rendre permanents &tous les paramètres de démarrage", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Supprimer", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Supprimer", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -138,8 +141,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Annuler", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Annuler", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -161,6 +164,17 @@ BEGIN PUSHBUTTON "Annuler", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Utilitaire de configuration système" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Les services essentiels ne peuvent pas être désactivés. Cela pourrait empêcher %s de fonctionner sur votre ordinateur.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Ne plus afficher ce message", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Utilitaire de configuration système" @@ -172,11 +186,11 @@ STRINGTABLE BEGIN IDS_YES "Oui" IDS_NO "Non" + IDS_UNKNOWN "Inconnu" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Services" IDS_TAB_STARTUP "Démarrage" END @@ -186,6 +200,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Essentiel" IDS_SERVICES_COLUMN_VENDOR "Fabricant" IDS_SERVICES_COLUMN_STATUS "État" + IDS_SERVICES_COLUMN_DATEDISABLED "Date de désactivation" END STRINGTABLE @@ -202,5 +217,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "En cours d'exécution" IDS_SERVICES_STATUS_STOPPED "Arrêté" - IDS_SERVICES_UNKNOWN "Inconnu" END diff --git a/reactos/base/applications/msconfig_new/lang/he-IL.rc b/reactos/base/applications/msconfig_new/lang/he-IL.rc index 17534733bd3..b5eefd2f1c2 100644 --- a/reactos/base/applications/msconfig_new/lang/he-IL.rc +++ b/reactos/base/applications/msconfig_new/lang/he-IL.rc @@ -78,14 +78,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "שירותים" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "הפעל הכל", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "בטל הכל", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Activate all", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Deactivate all", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -116,7 +119,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -140,8 +143,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "אישור", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "ביטול", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "אישור", IDOK, 20, 160, 50, 12 + PUSHBUTTON "ביטול", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -163,6 +166,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "כלי שירות לקביעת תצורת המערכת" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "כלי שירות לקביעת תצורת המערכת" @@ -174,11 +188,11 @@ STRINGTABLE BEGIN IDS_YES "כן" IDS_NO "No" + IDS_UNKNOWN "לא ידוע" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "שירותים" IDS_TAB_STARTUP "אתחול" END @@ -188,6 +202,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "בסיסי" IDS_SERVICES_COLUMN_VENDOR "יצרן" IDS_SERVICES_COLUMN_STATUS "מצב" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -204,5 +219,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "מופעל" IDS_SERVICES_STATUS_STOPPED "נעצר" - IDS_SERVICES_UNKNOWN "לא ידוע" END diff --git a/reactos/base/applications/msconfig_new/lang/hu-HU.rc b/reactos/base/applications/msconfig_new/lang/hu-HU.rc index 8522edc0383..aee5eb10867 100644 --- a/reactos/base/applications/msconfig_new/lang/hu-HU.rc +++ b/reactos/base/applications/msconfig_new/lang/hu-HU.rc @@ -78,14 +78,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Szolgáltatások" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "Mindet &bekapcsol", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "Mindet &kikapcsol", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "Mindet &bekapcsol", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "Mindet &kikapcsol", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -116,7 +119,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -140,8 +143,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Cancel", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Cancel", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -163,6 +166,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Rendszerkonfiguráciüs segédprogram" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Rendszerkonfiguráciüs segédprogram" @@ -174,11 +188,11 @@ STRINGTABLE BEGIN IDS_YES "Igen" IDS_NO "No" + IDS_UNKNOWN "Ismeretlen" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Szolgáltatások" IDS_TAB_STARTUP "Automatikus indítás" END @@ -188,6 +202,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Lényeges" IDS_SERVICES_COLUMN_VENDOR "Gyártó" IDS_SERVICES_COLUMN_STATUS "Állapot" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -204,5 +219,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Fut" IDS_SERVICES_STATUS_STOPPED "Leállítva" - IDS_SERVICES_UNKNOWN "Ismeretlen" END diff --git a/reactos/base/applications/msconfig_new/lang/id-ID.rc b/reactos/base/applications/msconfig_new/lang/id-ID.rc index cfa53d6cdaf..9278468b629 100644 --- a/reactos/base/applications/msconfig_new/lang/id-ID.rc +++ b/reactos/base/applications/msconfig_new/lang/id-ID.rc @@ -76,14 +76,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Layanan" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Aktifkan semua", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Deaktivasi semua", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Aktifkan semua", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Deaktivasi semua", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -114,7 +117,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -138,8 +141,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Batal", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Batal", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -161,6 +164,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Program konfigurasi sistem" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Program konfigurasi sistem" @@ -172,11 +186,11 @@ STRINGTABLE BEGIN IDS_YES "Ya" IDS_NO "No" + IDS_UNKNOWN "Tidak Dikenal" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Layanan" IDS_TAB_STARTUP "Startup" END @@ -186,6 +200,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Diperlukan" IDS_SERVICES_COLUMN_VENDOR "Vendor" IDS_SERVICES_COLUMN_STATUS "Status" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -202,5 +217,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Berjalan" IDS_SERVICES_STATUS_STOPPED "Dihentikan" - IDS_SERVICES_UNKNOWN "Tidak Dikenal" END diff --git a/reactos/base/applications/msconfig_new/lang/it-IT.rc b/reactos/base/applications/msconfig_new/lang/it-IT.rc index d7eb4a709ce..035441d55f5 100644 --- a/reactos/base/applications/msconfig_new/lang/it-IT.rc +++ b/reactos/base/applications/msconfig_new/lang/it-IT.rc @@ -76,14 +76,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Servizi" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "A&bilita tutto", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "Disabi&lita tutto", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "A&bilita tutto", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "Disabi&lita tutto", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -114,7 +117,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -138,8 +141,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Annulla", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Annulla", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -161,6 +164,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Utilità di configurazione del sistema" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Utilità di configurazione del sistema" @@ -172,11 +186,11 @@ STRINGTABLE BEGIN IDS_YES "Sì" IDS_NO "No" + IDS_UNKNOWN "Sconosciuto" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Servizi" IDS_TAB_STARTUP "Avvio" END @@ -186,6 +200,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Essenziale" IDS_SERVICES_COLUMN_VENDOR "Produttore" IDS_SERVICES_COLUMN_STATUS "Stato" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -202,5 +217,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Esecuzione" IDS_SERVICES_STATUS_STOPPED "Interrotto" - IDS_SERVICES_UNKNOWN "Sconosciuto" END diff --git a/reactos/base/applications/msconfig_new/lang/ko-KR.rc b/reactos/base/applications/msconfig_new/lang/ko-KR.rc index 1d4fa9229d0..c4cf0d1b223 100644 --- a/reactos/base/applications/msconfig_new/lang/ko-KR.rc +++ b/reactos/base/applications/msconfig_new/lang/ko-KR.rc @@ -78,14 +78,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "서비스" FONT 9, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "모두 활성화(&A)", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "모두 비활성화(&D)", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "모두 활성화(&A)", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "모두 비활성화(&D)", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -116,7 +119,32 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 +END + +IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 9, "MS Shell Dlg" +BEGIN + CHECKBOX "/&MAXMEM=", IDC_CBX_MAX_MEM, 10, 10, 50, 10 + EDITTEXT IDC_TXT_MAX_MEM, 80, 10, 60, 12 + CONTROL "", IDC_SCR_MAX_MEM, "msctls_updown32", 0x50000000, 140, 10, 11, 11 + CHECKBOX "/&NUMPROC=", IDC_CBX_NUM_PROC, 10, 25, 50, 10 + COMBOBOX IDC_DRP_NUM_PROC, 80, 25, 60, 10, CBS_DROPDOWNLIST | CBS_SORT | WS_CHILD | WS_VISIBLE | WS_TABSTOP + CHECKBOX "/&PCILOCK", IDC_CBX_PCI_LOCK, 10, 40, 50, 10 + CHECKBOX "/P&ROFILE", IDC_CBX_PROFILE, 10, 55, 50, 10 + CHECKBOX "/&IRQ", IDC_CBX_IRQ, 10, 70, 40, 12 + EDITTEXT IDC_TXT_IRQ, 80, 70, 60, 12, ES_LEFT + CHECKBOX "/&DEBUG", IDC_CBX_DEBUG, 10, 85, 40, 10 + CHECKBOX "/D&EBUGPORT", IDC_CBX_DEBUG_PORT, 20, 100, 60, 10 + COMBOBOX IDC_DRP_DEBUG_PORT, 80, 100, 60, 10, CBS_DROPDOWNLIST | CBS_SORT | WS_CHILD | WS_VISIBLE | WS_TABSTOP + CHECKBOX "/&BAUDRATE", IDC_CBX_BAUD_RATE, 20, 115, 50, 10 + COMBOBOX IDC_DRP_DRP_BAUD_RATE, 80, 115, 60, 10, CBS_DROPDOWNLIST | CBS_SORT | WS_CHILD | WS_VISIBLE | WS_TABSTOP + CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 + EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT + CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 + PUSHBUTTON "확인", IDOK, 20, 160, 50, 12 + PUSHBUTTON "취소", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -138,6 +166,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "시스템 설정 프로그램" +FONT 9, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "시스템 설정 프로그램" @@ -149,11 +188,11 @@ STRINGTABLE BEGIN IDS_YES "예" IDS_NO "No" + IDS_UNKNOWN "Unknown" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "서비스" IDS_TAB_STARTUP "시작프로그램" END @@ -163,6 +202,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "요구됨" IDS_SERVICES_COLUMN_VENDOR "벤더" IDS_SERVICES_COLUMN_STATUS "상태" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -179,5 +219,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "실행중" IDS_SERVICES_STATUS_STOPPED "정지됨" - IDS_SERVICES_UNKNOWN "Unknown" END diff --git a/reactos/base/applications/msconfig_new/lang/nl-NL.rc b/reactos/base/applications/msconfig_new/lang/nl-NL.rc index 162829f368b..3f916aa17a8 100644 --- a/reactos/base/applications/msconfig_new/lang/nl-NL.rc +++ b/reactos/base/applications/msconfig_new/lang/nl-NL.rc @@ -78,14 +78,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Services" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Alles inschakelen", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "Alles &uitschakelen", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Alles inschakelen", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "Alles &uitschakelen", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -116,7 +119,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -140,8 +143,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Cancel", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Cancel", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -163,6 +166,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Hulpprogramma voor systeemconfiguratie" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Hulpprogramma voor systeemconfiguratie" @@ -174,11 +188,11 @@ STRINGTABLE BEGIN IDS_YES "Ja" IDS_NO "No" + IDS_UNKNOWN "Onbekend" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Services" IDS_TAB_STARTUP "Opstarten" END @@ -188,6 +202,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Essentieel" IDS_SERVICES_COLUMN_VENDOR "Fabrikant" IDS_SERVICES_COLUMN_STATUS "Status" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -204,5 +219,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Wordt uitgevoerd" IDS_SERVICES_STATUS_STOPPED "Gestopt" - IDS_SERVICES_UNKNOWN "Onbekend" END diff --git a/reactos/base/applications/msconfig_new/lang/no-NO.rc b/reactos/base/applications/msconfig_new/lang/no-NO.rc index eb78d65199f..9b67d2a2eaa 100644 --- a/reactos/base/applications/msconfig_new/lang/no-NO.rc +++ b/reactos/base/applications/msconfig_new/lang/no-NO.rc @@ -76,14 +76,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Tjenester" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Aktivere alt", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Deaktivere alt", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Aktivere alt", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Deaktivere alt", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -114,7 +117,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -138,8 +141,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Avbryt", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Avbryt", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -161,6 +164,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Systemkonfigurasjon" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Systemkonfigurasjon" @@ -172,11 +186,11 @@ STRINGTABLE BEGIN IDS_YES "Ja" IDS_NO "No" + IDS_UNKNOWN "Ukjent" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Tjenester" IDS_TAB_STARTUP "Oppstart" END @@ -186,6 +200,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Viktig" IDS_SERVICES_COLUMN_VENDOR "Produsent" IDS_SERVICES_COLUMN_STATUS "Status" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -202,5 +217,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Kjører" IDS_SERVICES_STATUS_STOPPED "Stoppet" - IDS_SERVICES_UNKNOWN "Ukjent" END diff --git a/reactos/base/applications/msconfig_new/lang/pl-PL.rc b/reactos/base/applications/msconfig_new/lang/pl-PL.rc index 19ce58a78b6..4d4e9f4f438 100644 --- a/reactos/base/applications/msconfig_new/lang/pl-PL.rc +++ b/reactos/base/applications/msconfig_new/lang/pl-PL.rc @@ -84,14 +84,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Usługi" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Włącz wszystkie", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "Wyłącz wszy&stkie", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Włącz wszystkie", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "Wyłącz wszy&stkie", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -122,7 +125,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -146,8 +149,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Anuluj", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Anuluj", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -169,6 +172,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Program konfiguracji systemu" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Program konfiguracji systemu" @@ -180,11 +194,11 @@ STRINGTABLE BEGIN IDS_YES "Tak" IDS_NO "No" + IDS_UNKNOWN "Nieznany" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Usługi" IDS_TAB_STARTUP "Uruchamianie" END @@ -194,6 +208,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Wymagana" IDS_SERVICES_COLUMN_VENDOR "Producent" IDS_SERVICES_COLUMN_STATUS "Stan" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -210,5 +225,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Uruchomiona" IDS_SERVICES_STATUS_STOPPED "Zatrzymana" - IDS_SERVICES_UNKNOWN "Nieznany" END diff --git a/reactos/base/applications/msconfig_new/lang/pt-BR.rc b/reactos/base/applications/msconfig_new/lang/pt-BR.rc index fa628029a7f..766004e832b 100644 --- a/reactos/base/applications/msconfig_new/lang/pt-BR.rc +++ b/reactos/base/applications/msconfig_new/lang/pt-BR.rc @@ -78,14 +78,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Serviços" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "A&tivar tudo", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "D&esativar tudo", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "A&tivar tudo", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "D&esativar tudo", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -116,7 +119,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -140,8 +143,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Cancelar", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Cancelar", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -163,6 +166,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Programa de configuração do sistema" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Programa de configuração do sistema" @@ -174,11 +188,11 @@ STRINGTABLE BEGIN IDS_YES "Sim" IDS_NO "No" + IDS_UNKNOWN "Desconhecido" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Serviços" IDS_TAB_STARTUP "Inicializar" END @@ -188,6 +202,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Essencial" IDS_SERVICES_COLUMN_VENDOR "Fabricante" IDS_SERVICES_COLUMN_STATUS "Status" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -204,5 +219,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Em execução" IDS_SERVICES_STATUS_STOPPED "Parado" - IDS_SERVICES_UNKNOWN "Desconhecido" END diff --git a/reactos/base/applications/msconfig_new/lang/ro-RO.rc b/reactos/base/applications/msconfig_new/lang/ro-RO.rc index 0b54691b4d2..0f74004a844 100644 --- a/reactos/base/applications/msconfig_new/lang/ro-RO.rc +++ b/reactos/base/applications/msconfig_new/lang/ro-RO.rc @@ -78,14 +78,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Servicii" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "A&ctivează toate", IDC_BTN_SERVICES_ACTIVATE, 203, 155, 76, 14 - PUSHBUTTON "&Dezactivează toate", IDC_BTN_SERVICES_DEACTIVATE, 285, 155, 76, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "A&ctivează toate", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Dezactivează toate", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -116,7 +119,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -140,8 +143,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "Con&firmă", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "A&nulează", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "Con&firmă", IDOK, 20, 160, 50, 12 + PUSHBUTTON "A&nulează", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -163,6 +166,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Configuratorul de sistem" // "Program de configurare sistem" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Configuratorul de sistem" // "Program de configurare sistem" @@ -174,11 +188,11 @@ STRINGTABLE BEGIN IDS_YES "Da" IDS_NO "No" + IDS_UNKNOWN "Nespecificat" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Servicii" IDS_TAB_STARTUP "Autolansate" END @@ -188,6 +202,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "De bază" IDS_SERVICES_COLUMN_VENDOR "Furnizor" IDS_SERVICES_COLUMN_STATUS "Stare" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -204,5 +219,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Pornit" IDS_SERVICES_STATUS_STOPPED "Oprit" - IDS_SERVICES_UNKNOWN "Nespecificat" END diff --git a/reactos/base/applications/msconfig_new/lang/ru-RU.rc b/reactos/base/applications/msconfig_new/lang/ru-RU.rc index 423311fcfdd..3249c0a1e56 100644 --- a/reactos/base/applications/msconfig_new/lang/ru-RU.rc +++ b/reactos/base/applications/msconfig_new/lang/ru-RU.rc @@ -78,14 +78,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Службы" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Включить все", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "В&ыключить все", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Включить все", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "В&ыключить все", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -116,7 +119,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -140,8 +143,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Отмена", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Отмена", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -163,6 +166,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Настройки системы" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Настройки системы" @@ -174,11 +188,11 @@ STRINGTABLE BEGIN IDS_YES "Да" IDS_NO "No" + IDS_UNKNOWN "Неизвестный" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Службы" IDS_TAB_STARTUP "Автозагрузка" END @@ -188,6 +202,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Базовая" IDS_SERVICES_COLUMN_VENDOR "Изготовитель" IDS_SERVICES_COLUMN_STATUS "Состояние" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -204,5 +219,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Запущено" IDS_SERVICES_STATUS_STOPPED "Остановлено" - IDS_SERVICES_UNKNOWN "Неизвестный" END diff --git a/reactos/base/applications/msconfig_new/lang/sk-SK.rc b/reactos/base/applications/msconfig_new/lang/sk-SK.rc index b47ae3cec08..c016f3b01e4 100644 --- a/reactos/base/applications/msconfig_new/lang/sk-SK.rc +++ b/reactos/base/applications/msconfig_new/lang/sk-SK.rc @@ -80,14 +80,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Služby" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Aktivovať všetky", IDC_BTN_SERVICES_ACTIVATE, 203, 155, 76, 14 - PUSHBUTTON "&Deaktivovať všetky", IDC_BTN_SERVICES_DEACTIVATE, 285, 155, 76, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Aktivovať všetky", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Deaktivovať všetky", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -118,7 +121,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -142,8 +145,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Zrušiť", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Zrušiť", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -165,6 +168,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Program na konfiguráciu systému" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Program na konfiguráciu systému" @@ -176,11 +190,11 @@ STRINGTABLE BEGIN IDS_YES "Áno" IDS_NO "No" + IDS_UNKNOWN "Neznámy" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Služby" IDS_TAB_STARTUP "Po spustení" END @@ -190,6 +204,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Požadovaná" IDS_SERVICES_COLUMN_VENDOR "Výrobca" IDS_SERVICES_COLUMN_STATUS "Stav" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -206,5 +221,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Spustená" IDS_SERVICES_STATUS_STOPPED "Zastavená" - IDS_SERVICES_UNKNOWN "Neznámy" END diff --git a/reactos/base/applications/msconfig_new/lang/sq-AL.rc b/reactos/base/applications/msconfig_new/lang/sq-AL.rc index 710e7ad0056..3547af403bc 100644 --- a/reactos/base/applications/msconfig_new/lang/sq-AL.rc +++ b/reactos/base/applications/msconfig_new/lang/sq-AL.rc @@ -80,14 +80,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Shërbimet" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Aktivizo te gjith", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "Q'kaptivizo gjithqka", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Aktivizo te gjith", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "Q'kaptivizo gjithqka", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -118,7 +121,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -142,8 +145,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Cancel", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Cancel", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -165,6 +168,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Programi i konfigurimit te sistemit" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Programi i konfigurimit te sistemit" @@ -176,11 +190,11 @@ STRINGTABLE BEGIN IDS_YES "Po" IDS_NO "No" + IDS_UNKNOWN "I'panjohur" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Shërbimet" IDS_TAB_STARTUP "Startupi" END @@ -190,6 +204,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "T'nevojshem" IDS_SERVICES_COLUMN_VENDOR "Prodhuesi" IDS_SERVICES_COLUMN_STATUS "Statusi" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -206,5 +221,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Funksional" IDS_SERVICES_STATUS_STOPPED "I'ndaluar" - IDS_SERVICES_UNKNOWN "I'panjohur" END diff --git a/reactos/base/applications/msconfig_new/lang/sv-SE.rc b/reactos/base/applications/msconfig_new/lang/sv-SE.rc index 410806d07fc..e2397ec9257 100644 --- a/reactos/base/applications/msconfig_new/lang/sv-SE.rc +++ b/reactos/base/applications/msconfig_new/lang/sv-SE.rc @@ -83,14 +83,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Tjänster" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Aktivera allt", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Inaktivera allt", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Aktivera allt", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Inaktivera allt", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -121,7 +124,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -145,8 +148,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Avbryt", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Avbryt", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -168,6 +171,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Systemkonfiguration" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Systemkonfiguration" @@ -179,11 +193,11 @@ STRINGTABLE BEGIN IDS_YES "Ja" IDS_NO "No" + IDS_UNKNOWN "Okänt" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Tjänster" IDS_TAB_STARTUP "Uppstart" END @@ -193,6 +207,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Viktigt" IDS_SERVICES_COLUMN_VENDOR "Tillverkare" IDS_SERVICES_COLUMN_STATUS "Status" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -209,5 +224,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Körs" IDS_SERVICES_STATUS_STOPPED "Stoppad" - IDS_SERVICES_UNKNOWN "Okänt" END diff --git a/reactos/base/applications/msconfig_new/lang/th-TH.rc b/reactos/base/applications/msconfig_new/lang/th-TH.rc index 31b40702383..b8d42b43818 100644 --- a/reactos/base/applications/msconfig_new/lang/th-TH.rc +++ b/reactos/base/applications/msconfig_new/lang/th-TH.rc @@ -78,14 +78,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "บริการ" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Activate all", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Deactivate all", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Activate all", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Deactivate all", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -116,7 +119,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -140,8 +143,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "ตกลง", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "ยกเลิก", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "ตกลง", IDOK, 20, 160, 50, 12 + PUSHBUTTON "ยกเลิก", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -163,6 +166,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "โปรแกรมโครงแบบระบบ" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "โปรแกรมโครงแบบระบบ" @@ -174,11 +188,11 @@ STRINGTABLE BEGIN IDS_YES "ใช่" IDS_NO "No" + IDS_UNKNOWN "ไม่ทราบ" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "บริการ" IDS_TAB_STARTUP "เริ่มงานเครื่อง" END @@ -188,6 +202,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "ความต้องการ" IDS_SERVICES_COLUMN_VENDOR "ตัวแทน" IDS_SERVICES_COLUMN_STATUS "สถานะ" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -204,5 +219,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "กำลังดำเนินงาน" IDS_SERVICES_STATUS_STOPPED "หยุดแล้ว" - IDS_SERVICES_UNKNOWN "ไม่ทราบ" END diff --git a/reactos/base/applications/msconfig_new/lang/tr-TR.rc b/reactos/base/applications/msconfig_new/lang/tr-TR.rc index 32bf8b29d2c..2960d8699fa 100644 --- a/reactos/base/applications/msconfig_new/lang/tr-TR.rc +++ b/reactos/base/applications/msconfig_new/lang/tr-TR.rc @@ -78,14 +78,17 @@ BEGIN LTEXT "&Seçilen Komut:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Hizmetler" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Tümünü Etkinleştir", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "T&ümünü Edilginleştir", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Tümünü Etkinleştir", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "T&ümünü Edilginleştir", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -116,7 +119,7 @@ BEGIN LTEXT "sâniye", IDC_STATIC, 330, 104, 31, 10 CONTROL "T&üm Ön Yükleme Ayarlarını Kalıcı Yap", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "S&il", 1014, 295, 68, 66, 14 + PUSHBUTTON "S&il", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -140,8 +143,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "Tamam", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "İptal", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "Tamam", IDOK, 20, 160, 50, 12 + PUSHBUTTON "İptal", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -163,6 +166,17 @@ BEGIN PUSHBUTTON "İptal", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Dizge Yapılandırma İzlencesi" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Dizge Yapılandırma İzlencesi" @@ -174,11 +188,11 @@ STRINGTABLE BEGIN IDS_YES "Evet" IDS_NO "Hayır" + IDS_UNKNOWN "Bilinmeyen" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Hizmetler" IDS_TAB_STARTUP "Başlangıç" END @@ -188,6 +202,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Gerekli" IDS_SERVICES_COLUMN_VENDOR "Sağlayıcı" IDS_SERVICES_COLUMN_STATUS "Durum" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -204,5 +219,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Çalışıyor" IDS_SERVICES_STATUS_STOPPED "Durduruldu" - IDS_SERVICES_UNKNOWN "Bilinmeyen" END diff --git a/reactos/base/applications/msconfig_new/lang/uk-UA.rc b/reactos/base/applications/msconfig_new/lang/uk-UA.rc index 83d87109992..ed86afda40e 100644 --- a/reactos/base/applications/msconfig_new/lang/uk-UA.rc +++ b/reactos/base/applications/msconfig_new/lang/uk-UA.rc @@ -84,14 +84,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "Служби" FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "&Активувати все", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "&Деактивувати все", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "&Активувати все", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "&Деактивувати все", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -122,7 +125,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -146,8 +149,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "OK", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "Скасувати", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "OK", IDOK, 20, 160, 50, 12 + PUSHBUTTON "Скасувати", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -169,6 +172,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Програма налаштування системи" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "Програма налаштування системи" @@ -180,11 +194,11 @@ STRINGTABLE BEGIN IDS_YES "Так" IDS_NO "No" + IDS_UNKNOWN "Невідомо" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "Служби" IDS_TAB_STARTUP "Автозавантаження" END @@ -194,6 +208,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "Вимагає" IDS_SERVICES_COLUMN_VENDOR "Постачальник" IDS_SERVICES_COLUMN_STATUS "Стан" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -210,5 +225,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "Працює" IDS_SERVICES_STATUS_STOPPED "Зупинена" - IDS_SERVICES_UNKNOWN "Невідомо" END diff --git a/reactos/base/applications/msconfig_new/lang/zh-CN.rc b/reactos/base/applications/msconfig_new/lang/zh-CN.rc index 82af771dd11..77bcb7bccfa 100644 --- a/reactos/base/applications/msconfig_new/lang/zh-CN.rc +++ b/reactos/base/applications/msconfig_new/lang/zh-CN.rc @@ -78,14 +78,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN -FONT 9, "MS Shell Dlg" +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "服务" +FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "全部启用(&A)", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "全部禁用(&D)", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "全部启用(&A)", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "全部禁用(&D)", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -116,7 +119,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -140,8 +143,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "确定", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "取消", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "确定", IDOK, 20, 160, 50, 12 + PUSHBUTTON "取消", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -163,9 +166,20 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "系统配置实用程序" +FONT 9, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN - IDS_MSCONFIG "系统配置实用程序" + IDS_MSCONFIG "系统配置实用程序" IDS_MSCONFIG_2 "System Configuration" IDS_ABOUT "&About...\tShift+F1" END @@ -174,11 +188,11 @@ STRINGTABLE BEGIN IDS_YES "是" IDS_NO "No" + IDS_UNKNOWN "未知" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "服务" IDS_TAB_STARTUP "启动" END @@ -188,6 +202,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "基本的" IDS_SERVICES_COLUMN_VENDOR "制造商" IDS_SERVICES_COLUMN_STATUS "状态" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -204,5 +219,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "正在运行" IDS_SERVICES_STATUS_STOPPED "已停止" - IDS_SERVICES_UNKNOWN "未知" END diff --git a/reactos/base/applications/msconfig_new/lang/zh-TW.rc b/reactos/base/applications/msconfig_new/lang/zh-TW.rc index 67d215229a4..b1961aed4ca 100644 --- a/reactos/base/applications/msconfig_new/lang/zh-TW.rc +++ b/reactos/base/applications/msconfig_new/lang/zh-TW.rc @@ -78,14 +78,17 @@ BEGIN LTEXT "Selected &Command:", IDC_STATIC, 5, 127, 128, 10 END -IDD_SERVICES_PAGE DIALOGEX 0, 0, 362, 175 -STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN -FONT 9, "MS Shell Dlg" +IDD_SERVICES_PAGE DIALOGEX 0, 0, 366, 175 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CAPTION +CAPTION "服務" +FONT 8, "MS Shell Dlg" BEGIN - CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | - LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 2, 1, 360, 148 - PUSHBUTTON "全部啟用(&A)", IDC_BTN_SERVICES_ACTIVATE, 223, 155, 66, 14 - PUSHBUTTON "全部禁用(&D)", IDC_BTN_SERVICES_DEACTIVATE, 295, 155, 66, 14 + CONTROL "List1", IDC_SERVICES_LIST, "SysListView32", LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_BORDER | WS_TABSTOP, 5, 5, 356, 129 + PUSHBUTTON "全部啟用(&A)", IDC_BTN_SERVICES_ACTIVATE, 224, 156, 66, 14 + PUSHBUTTON "全部禁用(&D)", IDC_BTN_SERVICES_DEACTIVATE, 295, 156, 66, 14 + CONTROL "&Hide all %s services", IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 5, 158, 203, 12 + LTEXT "Please note that some secure %s services may not be disabled.", IDC_STATIC_SERVICES_WARNING, 5, 138, 220, 17 END IDD_FREELDR_PAGE DIALOGEX 0, 0, 366, 175 @@ -116,7 +119,7 @@ BEGIN LTEXT "seconds", IDC_STATIC, 330, 104, 31, 10 CONTROL "Make &all boot settings permanent", 292, "Button", BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP, 295, 121, 66, 49 - PUSHBUTTON "&Delete", 1014, 295, 68, 66, 14 + PUSHBUTTON "&Delete", IDC_BTN_DELETE, 295, 68, 66, 14 END IDD_FREELDR_ADVANCED_PAGE DIALOGEX 0, 0, 175, 175 @@ -140,8 +143,8 @@ BEGIN CHECKBOX "/&CHANNEL", IDC_CBX_CHANNEL, 20, 130, 50, 10 EDITTEXT IDC_TXT_CHANNEL, 80, 130, 60, 12, ES_LEFT CONTROL "", IDC_SCR_CHANNEL, "msctls_updown32", 0x50000000, 140, 130, 11, 11 - PUSHBUTTON "確定", IDC_OK, 20, 160, 50, 12 - PUSHBUTTON "取消", IDC_CANCEL, 100, 160, 50, 12 + PUSHBUTTON "確定", IDOK, 20, 160, 50, 12 + PUSHBUTTON "取消", IDCANCEL, 100, 160, 50, 12 END IDD_FILE_EXTRACT_DIALOG DIALOGEX 0, 0, 353, 117 @@ -163,6 +166,17 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 264, 96, 82, 14 END +IDD_REQUIRED_SERVICES_DISABLING_DIALOG DIALOGEX 0, 0, 237, 62 +STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "系統設定" +FONT 9, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK, 180, 41, 50, 14 + LTEXT "Essential services cannot be disabled. Doing so might prevent %s from running on your computer.", IDC_STATIC_REQSVCSDIS_INFO, 7, 7, 223, 28 + CONTROL "&Don't show this message in the future", IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE, + "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 7, 42, 154, 13 +END + STRINGTABLE BEGIN IDS_MSCONFIG "系統設定" @@ -174,11 +188,11 @@ STRINGTABLE BEGIN IDS_YES "是" IDS_NO "No" + IDS_UNKNOWN "未知" END STRINGTABLE BEGIN - IDS_TAB_SERVICES "服務" IDS_TAB_STARTUP "啟動" END @@ -188,6 +202,7 @@ BEGIN IDS_SERVICES_COLUMN_REQ "基本的" IDS_SERVICES_COLUMN_VENDOR "製造商" IDS_SERVICES_COLUMN_STATUS "狀態" + IDS_SERVICES_COLUMN_DATEDISABLED "Date Disabled" END STRINGTABLE @@ -204,5 +219,4 @@ STRINGTABLE BEGIN IDS_SERVICES_STATUS_RUNNING "執行中" IDS_SERVICES_STATUS_STOPPED "已停止" - IDS_SERVICES_UNKNOWN "未知" END diff --git a/reactos/base/applications/msconfig_new/msconfig.c b/reactos/base/applications/msconfig_new/msconfig.c index 4d2ff3e7541..83acfbf7e88 100644 --- a/reactos/base/applications/msconfig_new/msconfig.c +++ b/reactos/base/applications/msconfig_new/msconfig.c @@ -10,12 +10,12 @@ #include "fileutils.h" #include "utils.h" -#include "toolspage.h" -// #include "srvpage.h" -// #include "startuppage.h" -#include "freeldrpage.h" -// #include "systempage.h" #include "generalpage.h" +// #include "systempage.h" +#include "freeldrpage.h" +#include "srvpage.h" +// #include "startuppage.h" +#include "toolspage.h" /* Allow only for a single instance of MSConfig */ #ifdef _MSC_VER @@ -31,6 +31,11 @@ BOOL bIsWindows = FALSE; BOOL bIsOSVersionLessThanVista = TRUE; +/* Language-independent Vendor strings */ +const LPCWSTR IDS_REACTOS = L"ReactOS"; +const LPCWSTR IDS_MICROSOFT = L"Microsoft"; +const LPCWSTR IDS_WINDOWS = L"Windows"; + HINSTANCE hInst = NULL; LPWSTR szAppName = NULL; HWND hMainWnd; /* Main Window */ @@ -46,7 +51,7 @@ WNDPROC wpOrigEditProc = NULL; // http://www.catch22.net/software/winspy // Copyright (c) 2002 by J Brown // - + // // Copied from uxtheme.h // If you have this new header, then delete these and @@ -57,7 +62,7 @@ WNDPROC wpOrigEditProc = NULL; #define ETDT_USETABTEXTURE 0x00000004 #define ETDT_ENABLETAB (ETDT_ENABLE | ETDT_USETABTEXTURE) -// +// typedef HRESULT (WINAPI * ETDTProc) (HWND, DWORD); // @@ -72,7 +77,7 @@ BOOL EnableDialogTheme(HWND hwnd) if(hUXTheme) { - fnEnableThemeDialogTexture = + fnEnableThemeDialogTexture = (ETDTProc)GetProcAddress(hUXTheme, "EnableThemeDialogTexture"); if(fnEnableThemeDialogTexture) @@ -275,12 +280,12 @@ int CALLBACK PropSheetCallback(HWND hDlg, UINT message, LPARAM lParam) HWND CreatePropSheet(HINSTANCE hInstance, HWND hwndOwner, LPCTSTR lpszTitle) { HWND hPropSheet; - PROPSHEETHEADER psh; - PROPSHEETPAGE psp[7]; + PROPSHEETHEADERW psh; + PROPSHEETPAGEW psp[7]; unsigned int nPages = 0; - + /* Header */ - psh.dwSize = sizeof(PROPSHEETHEADER); + psh.dwSize = sizeof(psh); psh.dwFlags = PSH_PROPSHEETPAGE | PSH_MODELESS | /*PSH_USEICONID |*/ PSH_HASHELP | /*PSH_NOCONTEXTHELP |*/ PSH_USECALLBACK; psh.hInstance = hInstance; psh.hwndParent = hwndOwner; @@ -291,7 +296,7 @@ HWND CreatePropSheet(HINSTANCE hInstance, HWND hwndOwner, LPCTSTR lpszTitle) psh.pfnCallback = (PFNPROPSHEETCALLBACK)PropSheetCallback; /* General page */ - psp[nPages].dwSize = sizeof(PROPSHEETPAGE); + psp[nPages].dwSize = sizeof(PROPSHEETPAGEW); psp[nPages].dwFlags = PSP_HASHELP; psp[nPages].hInstance = hInstance; psp[nPages].pszTemplate = MAKEINTRESOURCE(IDD_GENERAL_PAGE); @@ -304,7 +309,7 @@ HWND CreatePropSheet(HINSTANCE hInstance, HWND hwndOwner, LPCTSTR lpszTitle) /* SYSTEM.INI page */ if (MyFileExists(lpszSystemIni, NULL)) { - psp[nPages].dwSize = sizeof(PROPSHEETPAGE); + psp[nPages].dwSize = sizeof(PROPSHEETPAGEW); psp[nPages].dwFlags = PSP_HASHELP | PSP_USETITLE; psp[nPages].hInstance = hInstance; psp[nPages].pszTitle = MAKEINTRESOURCE(IDS_TAB_SYSTEM); @@ -319,7 +324,7 @@ HWND CreatePropSheet(HINSTANCE hInstance, HWND hwndOwner, LPCTSTR lpszTitle) /* WIN.INI page */ if (MyFileExists(lpszWinIni, NULL)) { - psp[nPages].dwSize = sizeof(PROPSHEETPAGE); + psp[nPages].dwSize = sizeof(PROPSHEETPAGEW); psp[nPages].dwFlags = PSP_HASHELP | PSP_USETITLE; psp[nPages].hInstance = hInstance; psp[nPages].pszTitle = MAKEINTRESOURCE(IDS_TAB_WIN); @@ -352,7 +357,7 @@ HWND CreatePropSheet(HINSTANCE hInstance, HWND hwndOwner, LPCTSTR lpszTitle) if (MyFileExists(lpszLoaderIniFile, NULL)) { - psp[nPages].dwSize = sizeof(PROPSHEETPAGE); + psp[nPages].dwSize = sizeof(PROPSHEETPAGEW); psp[nPages].dwFlags = PSP_HASHELP | PSP_USETITLE; psp[nPages].hInstance = hInstance; psp[nPages].pszTitle = MAKEINTRESOURCE(dwTabNameId); @@ -365,17 +370,17 @@ HWND CreatePropSheet(HINSTANCE hInstance, HWND hwndOwner, LPCTSTR lpszTitle) } } -#if 0 /* Services page */ - psp[nPages].dwSize = sizeof(PROPSHEETPAGE); + psp[nPages].dwSize = sizeof(PROPSHEETPAGEW); psp[nPages].dwFlags = PSP_HASHELP; psp[nPages].hInstance = hInstance; psp[nPages].pszTemplate = MAKEINTRESOURCE(IDD_SERVICES_PAGE); psp[nPages].pfnDlgProc = (DLGPROC)ServicesPageWndProc; ++nPages; +#if 0 /* Startup page */ - psp[nPages].dwSize = sizeof(PROPSHEETPAGE); + psp[nPages].dwSize = sizeof(PROPSHEETPAGEW); psp[nPages].dwFlags = PSP_HASHELP; psp[nPages].hInstance = hInstance; psp[nPages].pszTemplate = MAKEINTRESOURCE(IDD_STARTUP_PAGE); @@ -384,7 +389,7 @@ HWND CreatePropSheet(HINSTANCE hInstance, HWND hwndOwner, LPCTSTR lpszTitle) #endif /* Tools page */ - psp[nPages].dwSize = sizeof(PROPSHEETPAGE); + psp[nPages].dwSize = sizeof(PROPSHEETPAGEW); psp[nPages].dwFlags = PSP_HASHELP; psp[nPages].hInstance = hInstance; psp[nPages].pszTemplate = MAKEINTRESOURCE(IDD_TOOLS_PAGE); diff --git a/reactos/base/applications/msconfig_new/msconfig.h b/reactos/base/applications/msconfig_new/msconfig.h index 937acc056fc..5aad207e648 100644 --- a/reactos/base/applications/msconfig_new/msconfig.h +++ b/reactos/base/applications/msconfig_new/msconfig.h @@ -7,6 +7,10 @@ extern "C" { extern BOOL bIsWindows; extern BOOL bIsOSVersionLessThanVista; +extern const LPCWSTR IDS_REACTOS; +extern const LPCWSTR IDS_MICROSOFT; +extern const LPCWSTR IDS_WINDOWS; + extern HINSTANCE hInst; extern LPWSTR szAppName; extern HWND hMainWnd; diff --git a/reactos/base/applications/msconfig_new/regutils.c b/reactos/base/applications/msconfig_new/regutils.c new file mode 100644 index 00000000000..6287e8f1245 --- /dev/null +++ b/reactos/base/applications/msconfig_new/regutils.c @@ -0,0 +1,209 @@ +#include "precomp.h" +#include "utils.h" +#include "regutils.h" + +LRESULT +RegQueryRegistryKeys(IN HKEY hRootKey, + IN LPCWSTR KeyName, + IN PQUERY_REGISTRY_KEYS_TABLE QueryTable, + IN PVOID Context) +{ + HKEY hSubKey = NULL; + + if (RegOpenKeyExW(hRootKey, KeyName, 0, KEY_ENUMERATE_SUB_KEYS, &hSubKey) == ERROR_SUCCESS) + { + HKEY hEntryKey = NULL; + + LRESULT lError = ERROR_SUCCESS; + DWORD dwIndex = 0; + WCHAR szValueName[MAX_VALUE_NAME] = L""; + DWORD dwValueLength = ARRAYSIZE(szValueName); + + while ( (lError = RegEnumKeyExW(hSubKey, dwIndex, szValueName, &dwValueLength, NULL, NULL, NULL, NULL)) != ERROR_NO_MORE_ITEMS ) + { + if ( (lError == ERROR_SUCCESS) && (RegOpenKeyExW(hSubKey, szValueName, 0, KEY_QUERY_VALUE, &hEntryKey) == ERROR_SUCCESS) ) + { + PQUERY_REGISTRY_KEYS_TABLE pTable = QueryTable; + while (pTable && pTable->QueryRoutine) + { + pTable->QueryRoutine(hRootKey, KeyName, szValueName, hEntryKey, Context, pTable->EntryContext); + ++pTable; + } + + RegCloseKey(hEntryKey); + } + + ++dwIndex; + dwValueLength = ARRAYSIZE(szValueName); + szValueName[0] = L'\0'; + } + + RegCloseKey(hSubKey); + } + + return ERROR_SUCCESS; +} + +// +// Idea taken from RtlQueryRegistryValues (see DDK). +// +LRESULT +RegQueryRegistryValues(IN HKEY hRootKey, + IN LPCWSTR KeyName, + IN PQUERY_REGISTRY_VALUES_TABLE QueryTable, + IN PVOID Context) +{ + LRESULT res = ERROR_SUCCESS; + HKEY hSubKey = NULL; + + if ( (res = RegOpenKeyExW(hRootKey, KeyName, 0, KEY_QUERY_VALUE, &hSubKey)) == ERROR_SUCCESS ) + { + DWORD dwIndex = 0, dwType = 0; + WCHAR szValueName[MAX_VALUE_NAME] = L""; + LPBYTE lpData = NULL; + DWORD dwValueLength = ARRAYSIZE(szValueName), dwDataLength = 0; + + while (RegEnumValueW(hSubKey, dwIndex, szValueName, &dwValueLength, NULL, &dwType, NULL, &dwDataLength) != ERROR_NO_MORE_ITEMS) + { + ++dwValueLength; + lpData = (LPBYTE)MemAlloc(0, dwDataLength); + + if (RegEnumValueW(hSubKey, dwIndex, szValueName, &dwValueLength, NULL, &dwType, lpData, &dwDataLength) == ERROR_SUCCESS) + { + PQUERY_REGISTRY_VALUES_TABLE pTable = QueryTable; + while (pTable && pTable->QueryRoutine) + { + pTable->QueryRoutine(hRootKey, KeyName, szValueName, dwType, lpData, dwDataLength, Context, pTable->EntryContext); + ++pTable; + } + } + + MemFree(lpData); lpData = NULL; + + ++dwIndex; + dwValueLength = ARRAYSIZE(szValueName), dwDataLength = 0; + szValueName[0] = L'\0'; + } + + RegCloseKey(hSubKey); + } + + return res; +} + +LONG +RegGetDWORDValue(IN HKEY hKey, + IN LPCWSTR lpSubKey OPTIONAL, + IN LPCWSTR lpValue OPTIONAL, + OUT LPDWORD lpData OPTIONAL) +{ + LONG lRet = ERROR_SUCCESS; + HKEY hEntryKey = NULL; + + // + // Open the sub-key, if any. Otherwise, + // use the given registry key handle. + // + if (lpSubKey) + { + lRet = RegOpenKeyExW(hKey, lpSubKey, 0, KEY_QUERY_VALUE, &hEntryKey); + } + else + { + if (hKey != INVALID_HANDLE_VALUE) + { + // TODO: Ensure that hKey has the KEY_QUERY_VALUE right. + hEntryKey = hKey; + lRet = ERROR_SUCCESS; + } + else + { + lRet = ERROR_INVALID_HANDLE; + } + } + + if (lRet == ERROR_SUCCESS) + { + DWORD dwType = 0, + dwRegData = 0, + dwBufSize = sizeof(dwRegData /* DWORD */); + + lRet = RegQueryValueExW(hEntryKey, lpValue, NULL, &dwType, (LPBYTE)&dwRegData, &dwBufSize); + + if (lRet == ERROR_SUCCESS) + { + if ( (dwType == REG_DWORD) && (dwBufSize == sizeof(DWORD)) ) + { + if (lpData) + *lpData = dwRegData; + } + else + { + lRet = ERROR_UNSUPPORTED_TYPE; + } + } + else if (lRet == ERROR_MORE_DATA) + { + if (dwType != REG_DWORD) + { + lRet = ERROR_UNSUPPORTED_TYPE; + } + } + + // Close the opened sub-key. + if (lpSubKey) + RegCloseKey(hEntryKey); + } + + return lRet; +} + +LONG +RegSetDWORDValue(IN HKEY hKey, + IN LPCWSTR lpSubKey OPTIONAL, + IN LPCWSTR lpValue OPTIONAL, + IN BOOL bCreateKeyIfDoesntExist, + IN DWORD dwData) +{ + LONG lRet = ERROR_SUCCESS; + HKEY hEntryKey = NULL; + + // + // Open (or create) the sub-key, if any. + // Otherwise, use the given registry key handle. + // + if (lpSubKey) + { + if (bCreateKeyIfDoesntExist) + lRet = RegCreateKeyExW(hKey, lpSubKey, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_SET_VALUE, NULL, &hEntryKey, NULL); + else + lRet = RegOpenKeyExW(hKey, lpSubKey, 0, KEY_SET_VALUE, &hEntryKey); + } + else + { + if (hKey != INVALID_HANDLE_VALUE) + { + // TODO: Ensure that hKey has the KEY_QUERY_VALUE right. + hEntryKey = hKey; + lRet = ERROR_SUCCESS; + } + else + { + lRet = ERROR_INVALID_HANDLE; + } + } + + // + // Opening successful, can set the value now. + // + if (lRet == ERROR_SUCCESS) + { + lRet = RegSetValueExW(hEntryKey, lpValue, 0, REG_DWORD, (LPBYTE)&dwData, sizeof(dwData /* DWORD */)); + + // Close the opened (or created) sub-key. + if (lpSubKey) + RegCloseKey(hEntryKey); + } + + return lRet; +} diff --git a/reactos/base/applications/msconfig_new/regutils.h b/reactos/base/applications/msconfig_new/regutils.h new file mode 100644 index 00000000000..0464eb74f6f --- /dev/null +++ b/reactos/base/applications/msconfig_new/regutils.h @@ -0,0 +1,93 @@ +#ifndef __REGUTILS_H__ +#define __REGUTILS_H__ + +#pragma once + +#ifdef __cplusplus +extern "C" { +#endif + +//////////////////////////////////////////////////////////////////////////////// +typedef LRESULT +(*PQUERY_REGISTRY_KEYS_ROUTINE)(IN HKEY hRootKey, + IN LPCWSTR KeyName, + IN LPWSTR SubKeyName, + IN HKEY hOpenedSubKey, + IN PVOID Context, + IN PVOID EntryContext); + +#define QUERY_REGISTRY_KEYS_ROUTINE(fnName) \ + LRESULT (fnName)(IN HKEY hRootKey, \ + IN LPCWSTR KeyName, \ + IN LPWSTR SubKeyName, \ + IN HKEY hOpenedSubKey, \ + IN PVOID Context, \ + IN PVOID EntryContext) + +typedef struct __tagQUERY_REGISTRY_KEYS_TABLE +{ + PQUERY_REGISTRY_KEYS_ROUTINE QueryRoutine; + PVOID EntryContext; + // Other fields ? +} QUERY_REGISTRY_KEYS_TABLE, *PQUERY_REGISTRY_KEYS_TABLE; + +LRESULT +RegQueryRegistryKeys(IN HKEY hRootKey, + IN LPCWSTR KeyName, + IN PQUERY_REGISTRY_KEYS_TABLE QueryTable, + IN PVOID Context); + +//////////////////////////////////////////////////////////////////////////////// +typedef LRESULT +(*PQUERY_REGISTRY_VALUES_ROUTINE)(IN HKEY hRootKey, + IN LPCWSTR KeyName, + IN LPWSTR ValueName, + IN DWORD ValueType, + IN LPBYTE ValueData, + IN DWORD ValueLength, + IN PVOID Context, + IN PVOID EntryContext); + +#define QUERY_REGISTRY_VALUES_ROUTINE(fnName) \ + LRESULT (fnName)(IN HKEY hRootKey, \ + IN LPCWSTR KeyName, \ + IN LPWSTR ValueName, \ + IN DWORD ValueType, \ + IN LPBYTE ValueData, \ + IN DWORD ValueLength, \ + IN PVOID Context, \ + IN PVOID EntryContext) + +typedef struct __tagQUERY_REGISTRY_VALUES_TABLE +{ + PQUERY_REGISTRY_VALUES_ROUTINE QueryRoutine; + PVOID EntryContext; + // Other fields ? +} QUERY_REGISTRY_VALUES_TABLE, *PQUERY_REGISTRY_VALUES_TABLE; + +LRESULT +RegQueryRegistryValues(IN HKEY hRootKey, + IN LPCWSTR KeyName, + IN PQUERY_REGISTRY_VALUES_TABLE QueryTable, + IN PVOID Context); + +//////////////////////////////////////////////////////////////////////////////// + +LONG +RegGetDWORDValue(IN HKEY hKey, + IN LPCWSTR lpSubKey OPTIONAL, + IN LPCWSTR lpValue OPTIONAL, + OUT LPDWORD lpData OPTIONAL); + +LONG +RegSetDWORDValue(IN HKEY hKey, + IN LPCWSTR lpSubKey OPTIONAL, + IN LPCWSTR lpValue OPTIONAL, + IN BOOL bCreateKeyIfDoesntExist, + IN DWORD dwData); + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif // __REGUTILS_H__ diff --git a/reactos/base/applications/msconfig_new/resource.h b/reactos/base/applications/msconfig_new/resource.h index ca45d455893..05cd6e108bb 100644 --- a/reactos/base/applications/msconfig_new/resource.h +++ b/reactos/base/applications/msconfig_new/resource.h @@ -1,133 +1,143 @@ #pragma once -#define IDC_STATIC -1 +#define IDC_STATIC -1 -#define IDS_YES 2210 -#define IDS_NO 2211 +#define IDS_YES 100 +#define IDS_NO 101 +#define IDS_UNKNOWN 102 -#define IDD_TOOLS_PAGE 102 -#define IDD_SERVICES_PAGE 103 -#define IDD_GENERAL_PAGE 104 -#define IDD_STARTUP_PAGE 105 -#define IDD_FREELDR_PAGE 106 -#define IDD_SYSTEM_PAGE 107 -#define IDD_FREELDR_ADVANCED_PAGE 108 - -#define IDC_SERVICES_LIST 1006 -#define IDC_STARTUP_LIST 1008 -#define IDC_BTN_SERVICES_ACTIVATE 1009 -#define IDC_BTN_SERVICES_DEACTIVATE 1010 -#define IDC_BTN_STARTUP_ACTIVATE 1011 -#define IDC_BTN_STARTUP_DEACTIVATE 1012 +/* Page & dialog IDs */ +#define IDD_TOOLS_PAGE 200 +#define IDD_SERVICES_PAGE 201 +#define IDD_GENERAL_PAGE 202 +#define IDD_STARTUP_PAGE 203 +#define IDD_FREELDR_PAGE 204 +#define IDD_SYSTEM_PAGE 205 +#define IDD_FREELDR_ADVANCED_PAGE 206 +#define IDD_FILE_EXTRACT_DIALOG 207 +#define IDD_REQUIRED_SERVICES_DISABLING_DIALOG 208 /* General page controls */ -#define IDC_RB_NORMAL_STARTUP 1013 -#define IDC_RB_DIAGNOSTIC_STARTUP 1014 -#define IDC_RB_SELECTIVE_STARTUP 1015 -#define IDC_CBX_SYSTEM_INI 1016 -#define IDC_CBX_WIN_INI 1218 -#define IDC_CBX_LOAD_SYSTEM_SERVICES 1017 -#define IDC_CBX_LOAD_STARTUP_ITEMS 1018 -#define IDC_CBX_USE_ORIGINAL_BOOTCFG 1118 -#define IDC_BTN_SYSTEM_RESTORE_START 1318 -#define IDC_BTN_FILE_EXTRACTION 1418 +#define IDC_RB_NORMAL_STARTUP 1000 +#define IDC_RB_DIAGNOSTIC_STARTUP 1001 +#define IDC_RB_SELECTIVE_STARTUP 1002 +#define IDC_CBX_SYSTEM_INI 1003 +#define IDC_CBX_WIN_INI 1004 +#define IDC_CBX_LOAD_SYSTEM_SERVICES 1005 +#define IDC_CBX_LOAD_STARTUP_ITEMS 1006 +#define IDC_CBX_USE_ORIGINAL_BOOTCFG 1007 +#define IDC_BTN_SYSTEM_RESTORE_START 1008 +#define IDC_BTN_FILE_EXTRACTION 1009 + +/* Startup page controls */ +#define IDS_TAB_SYSTEM 2000 +#define IDS_TAB_WIN 2001 /* FreeLdr page controls */ -#define IDS_TAB_FREELDR 2003 -#define IDS_TAB_BOOT 2004 -#define IDC_LIST_BOX 1019 -#define IDC_BTN_CHECK_BOOT_PATH 1020 -#define IDC_BTN_SET_DEFAULT_BOOT 1021 -#define IDC_BTN_MOVE_UP_BOOT_OPTION 1022 -#define IDC_BTN_MOVE_DOWN_BOOT_OPTION 1023 -#define IDC_CBX_SAFE_BOOT 1024 -#define IDC_CBX_NO_GUI_BOOT 1025 -#define IDC_CBX_BOOT_LOG 1026 -#define IDC_CBX_BASE_VIDEO 1027 -#define IDC_CBX_SOS 1028 -#define IDC_BTN_ADVANCED_OPTIONS 1029 -#define IDC_TXT_BOOT_TIMEOUT 1030 -#define IDC_RADIO1 1077 // FIXME! -#define IDC_RADIO2 1078 // FIXME! -#define IDC_RADIO3 1079 // FIXME! -#define IDC_RADIO4 1080 // FIXME! +#define IDS_TAB_FREELDR 2002 +#define IDS_TAB_BOOT 2003 +#define IDC_LIST_BOX 1010 +#define IDC_BTN_CHECK_BOOT_PATH 1011 +#define IDC_BTN_SET_DEFAULT_BOOT 1012 +#define IDC_BTN_MOVE_UP_BOOT_OPTION 1013 +#define IDC_BTN_MOVE_DOWN_BOOT_OPTION 1014 +#define IDC_BTN_DELETE 1015 +#define IDC_CBX_SAFE_BOOT 1016 +#define IDC_CBX_NO_GUI_BOOT 1017 +#define IDC_CBX_BOOT_LOG 1018 +#define IDC_CBX_BASE_VIDEO 1019 +#define IDC_CBX_SOS 1020 +#define IDC_BTN_ADVANCED_OPTIONS 1021 +#define IDC_TXT_BOOT_TIMEOUT 1022 +#define IDC_RADIO1 1023 // FIXME! +#define IDC_RADIO2 1024 // FIXME! +#define IDC_RADIO3 1025 // FIXME! +#define IDC_RADIO4 1026 // FIXME! + +/* Services page controls */ +#define IDC_SERVICES_LIST 1027 +#define IDC_BTN_SERVICES_ACTIVATE 1028 +#define IDC_BTN_SERVICES_DEACTIVATE 1029 +#define IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS 1030 +#define IDC_STATIC_SERVICES_WARNING 1031 + +/* Startup page controls */ +#define IDC_STARTUP_LIST 1032 +#define IDC_BTN_STARTUP_ACTIVATE 1033 +#define IDC_BTN_STARTUP_DEACTIVATE 1034 /* Tools page controls */ -#define IDC_TOOLS_LIST 1007 -#define IDC_TOOLS_CMDLINE 1004 -#define IDC_BTN_RUN 1005 -#define IDC_CBX_TOOLS_ADVOPT 1081 -#define IDS_TOOLS_COLUMN_NAME 2010 -#define IDS_TOOLS_COLUMN_DESCR 2011 -#define IDS_TOOLS_COLUMN_STANDARD 2009 +#define IDC_TOOLS_LIST 1035 +#define IDC_TOOLS_CMDLINE 1036 +#define IDC_BTN_RUN 1037 +#define IDC_CBX_TOOLS_ADVOPT 1038 + +#define IDS_TOOLS_COLUMN_NAME 2020 +#define IDS_TOOLS_COLUMN_DESCR 2021 +#define IDS_TOOLS_COLUMN_STANDARD 2022 /* File extract dialog */ -#define IDD_FILE_EXTRACT_DIALOG 1500 -#define IDC_BTN_BROWSE_ALL_FILES 1501 -#define IDC_BTN_BROWSE_CAB_FILES 1502 -#define IDC_BTN_BROWSE_DIRS 1503 -#define IDC_TXT_FILE_TO_RESTORE 1504 -#define IDC_DRP_CAB_FILE 1505 -#define IDC_DRP_DEST_DIR 1506 - -#define IDC_CBX_MAX_MEM 1031 -#define IDC_TXT_MAX_MEM 1032 -#define IDC_SCR_MAX_MEM 1033 -#define IDC_CBX_NUM_PROC 1034 -#define IDC_DRP_NUM_PROC 1035 -#define IDC_CBX_PCI_LOCK 1036 -#define IDC_CBX_PROFILE 1037 -#define IDC_CBX_IRQ 1038 -#define IDC_TXT_IRQ 1039 -#define IDC_CBX_DEBUG 1040 -#define IDC_CBX_DEBUG_PORT 1041 -#define IDC_DRP_DEBUG_PORT 1042 -#define IDC_CBX_BAUD_RATE 1043 -#define IDC_DRP_DRP_BAUD_RATE 1044 -#define IDC_CBX_CHANNEL 1045 -#define IDC_TXT_CHANNEL 1046 -#define IDC_SCR_CHANNEL 1047 -#define IDC_OK 1048 -#define IDC_CANCEL 1049 -#define IDC_BTN_SYSTEM_UP 1050 -#define IDC_BTN_SYSTEM_DOWN 1051 -#define IDC_BTN_SYSTEM_ENABLE 1052 -#define IDC_BTN_SYSTEM_DISABLE 1053 -#define IDC_BTN_SYSTEM_FIND 1054 -#define IDC_BTN_SYSTEM_NEW 1055 -#define IDC_BTN_SYSTEM_EDIT 1056 -#define IDC_SYSTEM_TREE 1057 -#define IDC_BTN_SYSTEM_ACTIVATE 1058 -#define IDC_BTN_SYSTEM_DEACTIVATE 1059 - -#define IDS_TAB_SYSTEM 2005 -#define IDS_TAB_WIN 2006 -#define IDS_TAB_STARTUP 2007 -#define IDS_TAB_SERVICES 2008 - -#define IDS_SERVICES_COLUMN_SERVICE 2012 -#define IDS_SERVICES_COLUMN_REQ 2013 -#define IDS_SERVICES_COLUMN_VENDOR 2014 -#define IDS_SERVICES_COLUMN_STATUS 2015 -#define IDS_STARTUP_COLUMN_ELEMENT 2016 -#define IDS_STARTUP_COLUMN_CMD 2017 -#define IDS_STARTUP_COLUMN_PATH 2018 - -#define IDS_SERVICES_STATUS_STOPPED 2200 -#define IDS_SERVICES_STATUS_RUNNING 2201 -#define IDS_SERVICES_UNKNOWN 2202 +#define IDC_BTN_BROWSE_ALL_FILES 1039 +#define IDC_BTN_BROWSE_CAB_FILES 1040 +#define IDC_BTN_BROWSE_DIRS 1041 +#define IDC_TXT_FILE_TO_RESTORE 1042 +#define IDC_DRP_CAB_FILE 1043 +#define IDC_DRP_DEST_DIR 1044 +/* Essential services warning dialog */ +#define IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE 1045 +#define IDC_STATIC_REQSVCSDIS_INFO 1046 +#define IDC_CBX_MAX_MEM 1200 +#define IDC_TXT_MAX_MEM 1201 +#define IDC_SCR_MAX_MEM 1202 +#define IDC_CBX_NUM_PROC 1203 +#define IDC_DRP_NUM_PROC 1204 +#define IDC_CBX_PCI_LOCK 1205 +#define IDC_CBX_PROFILE 1206 +#define IDC_CBX_IRQ 1207 +#define IDC_TXT_IRQ 1208 +#define IDC_CBX_DEBUG 1209 +#define IDC_CBX_DEBUG_PORT 1210 +#define IDC_DRP_DEBUG_PORT 1211 +#define IDC_CBX_BAUD_RATE 1212 +#define IDC_DRP_DRP_BAUD_RATE 1213 +#define IDC_CBX_CHANNEL 1214 +#define IDC_TXT_CHANNEL 1215 +#define IDC_SCR_CHANNEL 1216 +#define IDC_BTN_SYSTEM_UP 1217 +#define IDC_BTN_SYSTEM_DOWN 1218 +#define IDC_BTN_SYSTEM_ENABLE 1219 +#define IDC_BTN_SYSTEM_DISABLE 1220 +#define IDC_BTN_SYSTEM_FIND 1221 +#define IDC_BTN_SYSTEM_NEW 1222 +#define IDC_BTN_SYSTEM_EDIT 1223 +#define IDC_SYSTEM_TREE 1224 +#define IDC_BTN_SYSTEM_ACTIVATE 1225 +#define IDC_BTN_SYSTEM_DEACTIVATE 1226 + +#define IDS_TAB_STARTUP 2023 + +#define IDS_SERVICES_COLUMN_SERVICE 2024 +#define IDS_SERVICES_COLUMN_REQ 2025 +#define IDS_SERVICES_COLUMN_VENDOR 2026 +#define IDS_SERVICES_COLUMN_STATUS 2027 +#define IDS_SERVICES_COLUMN_DATEDISABLED 2028 + +#define IDS_SERVICES_STATUS_STOPPED 2029 +#define IDS_SERVICES_STATUS_RUNNING 2030 +#define IDS_STARTUP_COLUMN_ELEMENT 2031 +#define IDS_STARTUP_COLUMN_CMD 2032 +#define IDS_STARTUP_COLUMN_PATH 2033 #define IDS_MSCONFIG 3000 #define IDS_MSCONFIG_2 3001 -#define IDI_APPICON 3010 - +#define IDI_APPICON 3010 #define IDR_MSCONFIG 3020 #define IDM_ABOUT 3030 diff --git a/reactos/base/applications/msconfig_new/srvpage.c b/reactos/base/applications/msconfig_new/srvpage.c deleted file mode 100644 index f8d86c133f9..00000000000 --- a/reactos/base/applications/msconfig_new/srvpage.c +++ /dev/null @@ -1,306 +0,0 @@ -/* - * PROJECT: ReactOS Applications - * LICENSE: LGPL - See COPYING in the top level directory - * FILE: base/applications/msconfig_new/srvpage.c - * PURPOSE: Services page message handler - * COPYRIGHT: Copyright 2005-2006 Christoph von Wittich - * - */ - -#include "precomp.h" - -#include -#include - -HWND hServicesPage; -HWND hServicesListCtrl; -HWND hServicesDialog; - -void GetServices ( void ); - -INT_PTR CALLBACK -ServicesPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) -{ - LV_COLUMN column; - TCHAR szTemp[256]; - DWORD dwStyle; - - UNREFERENCED_PARAMETER(lParam); - UNREFERENCED_PARAMETER(wParam); - - switch (message) { - case WM_INITDIALOG: - - hServicesListCtrl = GetDlgItem(hDlg, IDC_SERVICES_LIST); - hServicesDialog = hDlg; - - dwStyle = (DWORD) SendMessage(hServicesListCtrl, LVM_GETEXTENDEDLISTVIEWSTYLE, 0, 0); - dwStyle = dwStyle | LVS_EX_FULLROWSELECT | LVS_EX_CHECKBOXES; - SendMessage(hServicesListCtrl, LVM_SETEXTENDEDLISTVIEWSTYLE, 0, dwStyle); - - SetWindowPos(hDlg, NULL, 10, 32, 0, 0, SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSIZE | SWP_NOZORDER); - - // Initialize the application page's controls - column.mask = LVCF_TEXT | LVCF_WIDTH; - - LoadString(hInst, IDS_SERVICES_COLUMN_SERVICE, szTemp, 256); - column.pszText = szTemp; - column.cx = 200; - (void)ListView_InsertColumn(hServicesListCtrl, 0, &column); - - column.mask = LVCF_TEXT | LVCF_WIDTH; - LoadString(hInst, IDS_SERVICES_COLUMN_REQ, szTemp, 256); - column.pszText = szTemp; - column.cx = 70; - (void)ListView_InsertColumn(hServicesListCtrl, 1, &column); - - column.mask = LVCF_TEXT | LVCF_WIDTH; - LoadString(hInst, IDS_SERVICES_COLUMN_VENDOR, szTemp, 256); - column.pszText = szTemp; - column.cx = 200; - (void)ListView_InsertColumn(hServicesListCtrl, 2, &column); - - column.mask = LVCF_TEXT | LVCF_WIDTH; - LoadString(hInst, IDS_SERVICES_COLUMN_STATUS, szTemp, 256); - column.pszText = szTemp; - column.cx = 70; - (void)ListView_InsertColumn(hServicesListCtrl, 3, &column); - - GetServices(); - return TRUE; - } - - return 0; -} - -void -GetServices ( void ) -{ - LV_ITEM item; - WORD wCodePage; - WORD wLangID; - SC_HANDLE ScHandle; - SC_HANDLE hService; - DWORD BytesNeeded = 0; - DWORD ResumeHandle = 0; - DWORD NumServices = 0; - DWORD dwHandle, dwLen; - size_t Index; - UINT BufLen; - TCHAR szStatus[128]; - TCHAR* lpData; - TCHAR* lpBuffer; - TCHAR szStrFileInfo[80]; - TCHAR FileName[MAX_PATH]; - LPVOID pvData; - - LPSERVICE_FAILURE_ACTIONS pServiceFailureActions = NULL; - LPQUERY_SERVICE_CONFIG pServiceConfig = NULL; - ENUM_SERVICE_STATUS_PROCESS *pServiceStatus = NULL; - - ScHandle = OpenSCManager(NULL, NULL, SC_MANAGER_ENUMERATE_SERVICE); - if (ScHandle != NULL) - { - if (EnumServicesStatusEx(ScHandle, SC_ENUM_PROCESS_INFO, SERVICE_WIN32, SERVICE_STATE_ALL, (LPBYTE)pServiceStatus, 0, &BytesNeeded, &NumServices, &ResumeHandle, 0) == 0) - { - /* Call function again if required size was returned */ - if (GetLastError() == ERROR_MORE_DATA) - { - /* reserve memory for service info array */ - pServiceStatus = HeapAlloc(GetProcessHeap(), 0, BytesNeeded); - if (!pServiceStatus) - { - CloseServiceHandle(ScHandle); - return; - } - - /* fill array with service info */ - if (EnumServicesStatusEx(ScHandle, SC_ENUM_PROCESS_INFO, SERVICE_WIN32, SERVICE_STATE_ALL, (LPBYTE)pServiceStatus, BytesNeeded, &BytesNeeded, &NumServices, &ResumeHandle, 0) == 0) - { - HeapFree(GetProcessHeap(), 0, pServiceStatus); - CloseServiceHandle(ScHandle); - return; - } - } - else /* exit on failure */ - { - CloseServiceHandle(ScHandle); - return; - } - } - - if (NumServices) - { - if (!pServiceStatus) - { - CloseServiceHandle(ScHandle); - return; - } - - for (Index = 0; Index < NumServices; Index++) - { - memset(&item, 0, sizeof(LV_ITEM)); - item.mask = LVIF_TEXT; - item.iImage = 0; - item.pszText = pServiceStatus[Index].lpDisplayName; - item.iItem = ListView_GetItemCount(hServicesListCtrl); - item.lParam = 0; - item.iItem = ListView_InsertItem(hServicesListCtrl, &item); - - if (pServiceStatus[Index].ServiceStatusProcess.dwCurrentState == SERVICE_RUNNING) - { - ListView_SetCheckState(hServicesListCtrl, item.iItem, TRUE); - } - - BytesNeeded = 0; - hService = OpenService(ScHandle, pServiceStatus[Index].lpServiceName, SC_MANAGER_CONNECT); - if (hService != NULL) - { - /* check if service is required by the system*/ - if (!QueryServiceConfig2(hService, SERVICE_CONFIG_FAILURE_ACTIONS, (LPBYTE)NULL, 0, &BytesNeeded)) - { - if (GetLastError() == ERROR_INSUFFICIENT_BUFFER) - { - pServiceFailureActions = HeapAlloc(GetProcessHeap(), 0, BytesNeeded); - if (pServiceFailureActions == NULL) - { - HeapFree(GetProcessHeap(), 0, pServiceStatus); - CloseServiceHandle(hService); - CloseServiceHandle(ScHandle); - return; - } - - if (!QueryServiceConfig2(hService, SERVICE_CONFIG_FAILURE_ACTIONS, (LPBYTE)pServiceFailureActions, BytesNeeded, &BytesNeeded)) - { - HeapFree(GetProcessHeap(), 0, pServiceFailureActions); - HeapFree(GetProcessHeap(), 0, pServiceStatus); - CloseServiceHandle(hService); - CloseServiceHandle(ScHandle); - return; - } - } - else /* exit on failure */ - { - HeapFree(GetProcessHeap(), 0, pServiceStatus); - CloseServiceHandle(hService); - CloseServiceHandle(ScHandle); - return; - } - } - - if (pServiceFailureActions != NULL) - { - if (pServiceFailureActions->cActions && pServiceFailureActions->lpsaActions[0].Type == SC_ACTION_REBOOT) - { - LoadString(hInst, IDS_YES, szStatus, 128); - item.pszText = szStatus; - item.iSubItem = 1; - SendMessage(hServicesListCtrl, LVM_SETITEMTEXT, item.iItem, (LPARAM) &item); - } - HeapFree(GetProcessHeap(), 0, pServiceFailureActions); - pServiceFailureActions = NULL; - } - - /* get vendor of service binary */ - BytesNeeded = 0; - if (!QueryServiceConfig(hService, NULL, 0, &BytesNeeded)) - { - if (GetLastError() == ERROR_INSUFFICIENT_BUFFER) - { - pServiceConfig = HeapAlloc(GetProcessHeap(), 0, BytesNeeded); - if (pServiceConfig == NULL) - { - HeapFree(GetProcessHeap(), 0, pServiceStatus); - CloseServiceHandle(hService); - CloseServiceHandle(ScHandle); - return; - } - if (!QueryServiceConfig(hService, pServiceConfig, BytesNeeded, &BytesNeeded)) - { - HeapFree(GetProcessHeap(), 0, pServiceConfig); - HeapFree(GetProcessHeap(), 0, pServiceStatus); - CloseServiceHandle(hService); - CloseServiceHandle(ScHandle); - return; - } - } - else /* exit on failure */ - { - HeapFree(GetProcessHeap(), 0, pServiceStatus); - CloseServiceHandle(hService); - CloseServiceHandle(ScHandle); - return; - } - } - - memset(&FileName, 0, MAX_PATH); - if (_tcscspn(pServiceConfig->lpBinaryPathName, _T("\""))) - { - _tcsncpy(FileName, pServiceConfig->lpBinaryPathName, _tcscspn(pServiceConfig->lpBinaryPathName, _T(" ")) ); - } - else - { - _tcscpy(FileName, pServiceConfig->lpBinaryPathName); - } - - HeapFree(GetProcessHeap(), 0, pServiceConfig); - pServiceConfig = NULL; - - dwLen = GetFileVersionInfoSize(FileName, &dwHandle); - if (dwLen) - { - lpData = HeapAlloc(GetProcessHeap(), 0, dwLen); - if (lpData == NULL) - { - HeapFree(GetProcessHeap(), 0, pServiceStatus); - CloseServiceHandle(hService); - CloseServiceHandle(ScHandle); - return; - } - if (!GetFileVersionInfo (FileName, dwHandle, dwLen, lpData)) - { - HeapFree(GetProcessHeap(), 0, lpData); - HeapFree(GetProcessHeap(), 0, pServiceStatus); - CloseServiceHandle(hService); - CloseServiceHandle(ScHandle); - return; - } - - if (VerQueryValue(lpData, _T("\\VarFileInfo\\Translation"), &pvData, (PUINT) &BufLen)) - { - wCodePage = LOWORD(*(DWORD*) pvData); - wLangID = HIWORD(*(DWORD*) pvData); - wsprintf(szStrFileInfo, _T("StringFileInfo\\%04X%04X\\CompanyName"), wCodePage, wLangID); - } - - if (VerQueryValue (lpData, szStrFileInfo, (void**) &lpBuffer, (PUINT) &BufLen)) - { - item.pszText = lpBuffer; - item.iSubItem = 2; - SendMessage(hServicesListCtrl, LVM_SETITEMTEXT, item.iItem, (LPARAM) &item); - } - HeapFree(GetProcessHeap(), 0, lpData); - } - else - { - LoadString(hInst, IDS_SERVICES_UNKNOWN, szStatus, 128); - item.pszText = szStatus; - item.iSubItem = 2; - SendMessage(hServicesListCtrl, LVM_SETITEMTEXT, item.iItem, (LPARAM) &item); - } - CloseServiceHandle(hService); - } - - LoadString(hInst, ((pServiceStatus[Index].ServiceStatusProcess.dwCurrentState == SERVICE_STOPPED) ? IDS_SERVICES_STATUS_STOPPED : IDS_SERVICES_STATUS_RUNNING), szStatus, 128); - item.pszText = szStatus; - item.iSubItem = 3; - SendMessage(hServicesListCtrl, LVM_SETITEMTEXT, item.iItem, (LPARAM) &item); - - } - } - - HeapFree(GetProcessHeap(), 0, pServiceStatus); - CloseServiceHandle(ScHandle); - } - -} diff --git a/reactos/base/applications/msconfig_new/srvpage.cpp b/reactos/base/applications/msconfig_new/srvpage.cpp new file mode 100644 index 00000000000..9fa77b2b655 --- /dev/null +++ b/reactos/base/applications/msconfig_new/srvpage.cpp @@ -0,0 +1,1122 @@ +/* + * PROJECT: ReactOS Applications + * LICENSE: LGPL - See COPYING in the top level directory + * FILE: base/applications/msconfig_new/srvpage.cpp + * PURPOSE: Services page message handler + * COPYRIGHT: Copyright 2005-2006 Christoph von Wittich + * Copyright 2011-2012 Hermes BELUSCA - MAITO + * + */ + +#include "precomp.h" +#include "utils.h" +#include "listviewfuncs.h" +#include "regutils.h" +#include "stringutils.h" +// #include "CmdLineParser.h" + +#include + +// #include +#include +#include + +static HWND hServicesPage = NULL; +static HWND hServicesListCtrl = NULL; +static int iSortedColumn = 0; +static BOOL bMaskProprietarySvcs = FALSE; + +DWORD GetServicesActivation(VOID) +{ + DWORD dwServices = 0; + RegGetDWORDValue(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig\\state", L"services", &dwServices); + return dwServices; +} + +BOOL SetServicesActivation(DWORD dwState) +{ + return (RegSetDWORDValue(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig\\state", L"services", TRUE, dwState) == ERROR_SUCCESS); +} + +static BOOL +RegisterNoMsgAnymore(VOID) +{ + return (RegSetDWORDValue(HKEY_CURRENT_USER /* HKEY_LOCAL_MACHINE ?? */, + L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig", + L"HideEssentialServiceWarning", + TRUE, 1) == ERROR_SUCCESS); +} + +BOOL +HideEssentialServiceWarning(VOID) +{ + BOOL bRetVal = FALSE; + DWORD dwValue = 0; + + bRetVal = ( (RegGetDWORDValue(HKEY_CURRENT_USER /* HKEY_LOCAL_MACHINE ?? */, + L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig", + L"HideEssentialServiceWarning", + &dwValue) == ERROR_SUCCESS) && + (dwValue == 1) ); + + return bRetVal; +} + +struct ServiceItem +{ + ServiceItem(const LPCWSTR lpszSvcName, + BOOL bIsEnabled, + BOOL bIsRequired) : + m_lpszSvcName(lpszSvcName), + m_bIsEnabled(bIsEnabled), + m_bIsRequired(bIsRequired) + { } + + ~ServiceItem(void) + { } + + CAtlStringW m_lpszSvcName; + BOOL m_bIsEnabled; + BOOL m_bIsRequired; +}; + +struct RegistryDisabledServiceItemParams +{ + BOOL bIsPresent; + BOOL bIsKeyed; // bIsKeyed == TRUE for a keyed-registered service ; == FALSE for a valued-registered service. + DWORD dwStartType; + SYSTEMTIME time; +}; + +static CAtlList userModificationsList; + +QUERY_REGISTRY_VALUES_ROUTINE(GetRegistryValuedDisabledServicesQueryRoutine) +{ + UNREFERENCED_PARAMETER(KeyName); + UNREFERENCED_PARAMETER(ValueData); + UNREFERENCED_PARAMETER(ValueLength); + + if (!EntryContext) + return ERROR_SUCCESS; + + RegistryDisabledServiceItemParams* pContextParams = (RegistryDisabledServiceItemParams*)EntryContext; + if (pContextParams->bIsPresent) + return ERROR_SUCCESS; + + if ( (hRootKey == HKEY_LOCAL_MACHINE) && (ValueType == REG_DWORD) && (ValueLength == sizeof(DWORD)) && + (wcsicmp((LPCWSTR)Context, ValueName) == 0) ) + { + pContextParams->bIsPresent = TRUE; + pContextParams->bIsKeyed = FALSE; + pContextParams->dwStartType = *(DWORD*)ValueData; + // pContextParams->time = {}; + } + else + { + pContextParams->bIsPresent = FALSE; + pContextParams->bIsKeyed = FALSE; + pContextParams->dwStartType = 0; + // pContextParams->time = {}; + } + + return ERROR_SUCCESS; +} + +QUERY_REGISTRY_KEYS_ROUTINE(GetRegistryKeyedDisabledServicesQueryRoutine) +{ + UNREFERENCED_PARAMETER(hRootKey); + UNREFERENCED_PARAMETER(KeyName); + + if (!EntryContext) + return ERROR_SUCCESS; + + RegistryDisabledServiceItemParams* pContextParams = (RegistryDisabledServiceItemParams*)EntryContext; + if (pContextParams->bIsPresent) + return ERROR_SUCCESS; + + DWORD dwType = 0, dwBufSize = 0; + + // Be careful, the order of the operations in the comparison is very important. + if ( (wcsicmp((LPCWSTR)Context, SubKeyName) == 0) && + (RegQueryValueEx(hOpenedSubKey, /* ValueName == */ SubKeyName, NULL, &dwType, NULL, &dwBufSize) == ERROR_SUCCESS) && + (dwType == REG_DWORD) && (dwBufSize == sizeof(DWORD)) ) + { +#if 1 // DisableDate + SYSTEMTIME disableDate = {}; + DWORD dwRegData = 0; + + dwRegData = 0; + RegGetDWORDValue(hOpenedSubKey, NULL, L"DAY", &dwRegData); + disableDate.wDay = LOWORD(dwRegData); + + dwRegData = 0; + RegGetDWORDValue(hOpenedSubKey, NULL, L"HOUR", &dwRegData); + disableDate.wHour = LOWORD(dwRegData); + + dwRegData = 0; + RegGetDWORDValue(hOpenedSubKey, NULL, L"MINUTE", &dwRegData); + disableDate.wMinute = LOWORD(dwRegData); + + dwRegData = 0; + RegGetDWORDValue(hOpenedSubKey, NULL, L"MONTH", &dwRegData); + disableDate.wMonth = LOWORD(dwRegData); + + dwRegData = 0; + RegGetDWORDValue(hOpenedSubKey, NULL, L"SECOND", &dwRegData); + disableDate.wSecond = LOWORD(dwRegData); + + dwRegData = 0; + RegGetDWORDValue(hOpenedSubKey, NULL, L"YEAR", &dwRegData); + disableDate.wYear = LOWORD(dwRegData); +#endif + + DWORD dwStartType = 0; + RegGetDWORDValue(hOpenedSubKey, NULL, SubKeyName /* Service name */, &dwStartType); + + pContextParams->bIsPresent = TRUE; + pContextParams->bIsKeyed = TRUE; + pContextParams->dwStartType = dwStartType; + pContextParams->time = disableDate; + } + else + { + pContextParams->bIsPresent = FALSE; + pContextParams->bIsKeyed = TRUE; + pContextParams->dwStartType = 0; + // pContextParams->time = {}; + } + + return ERROR_SUCCESS; +} + + + +static void AddService(SC_HANDLE hSCManager, LPENUM_SERVICE_STATUS_PROCESS Service, BOOL bHideOSVendorServices) +{ + // + // Retrieve a handle to the service. + // + SC_HANDLE hService = OpenServiceW(hSCManager, Service->lpServiceName, SERVICE_QUERY_CONFIG); + if (hService == NULL) + return; + + DWORD dwBytesNeeded = 0; + QueryServiceConfigW(hService, NULL, 0, &dwBytesNeeded); + // if (GetLastError() == ERROR_INSUFFICIENT_BUFFER) + + LPQUERY_SERVICE_CONFIG lpServiceConfig = (LPQUERY_SERVICE_CONFIG)MemAlloc(0, dwBytesNeeded); + if (!lpServiceConfig) + { + CloseServiceHandle(hService); + return; + } + QueryServiceConfigW(hService, lpServiceConfig, dwBytesNeeded, &dwBytesNeeded); + + // + // Get the service's vendor... + // + LPWSTR lpszVendor = NULL; + { + // Isolate only the executable path, without any arguments. + // TODO: Correct at the level of CmdLineToArgv the potential bug when lpszFilename == NULL. +#if 0 // Disabled until CmdLineToArgv is included + unsigned int argc = 0; + LPWSTR* argv = NULL; + CmdLineToArgv(lpServiceConfig->lpBinaryPathName, &argc, &argv, L" \t"); + if (argc >= 1 && argv[0]) + lpszVendor = GetExecutableVendor(argv[0]); +#else + // Hackish solution taken from the original srvpage.c. + // Will be removed after CmdLineToArgv is introduced. + WCHAR FileName[MAX_PATH]; + memset(&FileName, 0, sizeof(FileName)); + if (wcscspn(lpServiceConfig->lpBinaryPathName, L"\"")) + { + wcsncpy(FileName, lpServiceConfig->lpBinaryPathName, wcscspn(lpServiceConfig->lpBinaryPathName, L" ") ); + } + else + { + wcscpy(FileName, lpServiceConfig->lpBinaryPathName); + } + lpszVendor = GetExecutableVendor(FileName); +#endif + if (!lpszVendor) + lpszVendor = LoadResourceString(hInst, IDS_UNKNOWN); +#if 0 + MemFree(argv); +#endif + } + + // ...and display or not the Microsoft / ReactOS services. + BOOL bContinue = TRUE; + if (bHideOSVendorServices) + { + if (FindSubStrI(lpszVendor, bIsWindows ? IDS_MICROSOFT : IDS_REACTOS)) + bContinue = FALSE; + } + + if (bContinue) + { + BOOL bIsServiceEnabled = (lpServiceConfig->dwStartType != SERVICE_DISABLED); + BOOL bAddServiceToList = FALSE; + BOOL bIsModifiedService = FALSE; + RegistryDisabledServiceItemParams params = {}; + + // + // Try to look into the user modifications list... + // + POSITION it = userModificationsList.Find(Service->lpServiceName); + if (it) + { + bAddServiceToList = TRUE; + bIsModifiedService = TRUE; + } + + // + // ...if not found, try to find if the disabled service is in the registry. + // + if (!bAddServiceToList) + { + if (!bIsServiceEnabled) + { + QUERY_REGISTRY_KEYS_TABLE KeysQueryTable[2] = {}; + KeysQueryTable[0].QueryRoutine = GetRegistryKeyedDisabledServicesQueryRoutine; + KeysQueryTable[0].EntryContext = ¶ms; + RegQueryRegistryKeys(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig\\services", KeysQueryTable, Service->lpServiceName); + + bAddServiceToList = params.bIsPresent; + + if (bIsWindows && bIsOSVersionLessThanVista && !bAddServiceToList) + { + QUERY_REGISTRY_VALUES_TABLE ValuesQueryTable[2] = {}; + ValuesQueryTable[0].QueryRoutine = GetRegistryValuedDisabledServicesQueryRoutine; + ValuesQueryTable[0].EntryContext = ¶ms; + RegQueryRegistryValues(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig\\services", ValuesQueryTable, Service->lpServiceName); + + bAddServiceToList = params.bIsPresent; + } + } + else + { + bAddServiceToList = TRUE; + } + } + + if (bAddServiceToList) + { + // + // Check if service is required by the system. + // + BOOL bIsRequired = FALSE; + + dwBytesNeeded = 0; + QueryServiceConfig2(hService, SERVICE_CONFIG_FAILURE_ACTIONS, NULL, 0, &dwBytesNeeded); + // if (GetLastError() == ERROR_INSUFFICIENT_BUFFER) + + LPSERVICE_FAILURE_ACTIONS lpServiceFailureActions = (LPSERVICE_FAILURE_ACTIONS)MemAlloc(0, dwBytesNeeded); + if (!lpServiceFailureActions) + { + MemFree(lpszVendor); + MemFree(lpServiceConfig); + CloseServiceHandle(hService); + return; + } + + QueryServiceConfig2(hService, SERVICE_CONFIG_FAILURE_ACTIONS, (LPBYTE)lpServiceFailureActions, dwBytesNeeded, &dwBytesNeeded); + + // In Microsoft's MSConfig, things are done just like that!! (extracted string values from msconfig.exe) + if ( ( wcsicmp(Service->lpServiceName, L"rpcss" ) == 0 || + wcsicmp(Service->lpServiceName, L"rpclocator") == 0 || + wcsicmp(Service->lpServiceName, L"dcomlaunch") == 0 ) || + ( lpServiceFailureActions && + (lpServiceFailureActions->cActions >= 1) && + (lpServiceFailureActions->lpsaActions[0].Type == SC_ACTION_REBOOT) ) ) // We add also this test, which corresponds to real life. + { + bIsRequired = TRUE; + } + MemFree(lpServiceFailureActions); + + // + // Add the service into the list. + // + LVITEM item = {}; + item.mask = LVIF_TEXT | LVIF_PARAM; + item.pszText = Service->lpDisplayName; + item.lParam = reinterpret_cast(new ServiceItem(Service->lpServiceName, bIsServiceEnabled, bIsRequired)); + item.iItem = ListView_InsertItem(hServicesListCtrl, &item); + + if (bIsRequired) + { + LPWSTR lpszYes = LoadResourceString(hInst, IDS_YES); + ListView_SetItemText(hServicesListCtrl, item.iItem, 1, lpszYes); + MemFree(lpszYes); + } + + ListView_SetItemText(hServicesListCtrl, item.iItem, 2, lpszVendor); + + LPWSTR lpszStatus = LoadResourceString(hInst, ((Service->ServiceStatusProcess.dwCurrentState == SERVICE_STOPPED) ? IDS_SERVICES_STATUS_STOPPED : IDS_SERVICES_STATUS_RUNNING)); + ListView_SetItemText(hServicesListCtrl, item.iItem, 3, lpszStatus); + MemFree(lpszStatus); + + if (!bIsServiceEnabled) + { + LPWSTR lpszUnknown = LoadResourceString(hInst, IDS_UNKNOWN); + + LPWSTR lpszDisableDate = FormatDateTime(¶ms.time); + ListView_SetItemText(hServicesListCtrl, item.iItem, 4, (lpszDisableDate ? lpszDisableDate : lpszUnknown)); + FreeDateTime(lpszDisableDate); + + MemFree(lpszUnknown); + } + + ListView_SetCheckState(hServicesListCtrl, item.iItem, (!bIsModifiedService ? bIsServiceEnabled : !bIsServiceEnabled)); + } + } + + MemFree(lpszVendor); + MemFree(lpServiceConfig); + CloseServiceHandle(hService); + + return; +} + +static void ClearServicesList(void) +{ + LVITEM lvitem = {}; + lvitem.mask = LVIF_PARAM; + lvitem.iItem = -1; // From the beginning. + + while ((lvitem.iItem = ListView_GetNextItem(hServicesListCtrl, lvitem.iItem, LVNI_ALL)) != -1) + { + ListView_GetItem(hServicesListCtrl, &lvitem); + + delete reinterpret_cast(lvitem.lParam); + lvitem.lParam = NULL; + } + ListView_DeleteAllItems(hServicesListCtrl); + + return; +} + +static void GetServices(BOOL bHideOSVendorServices = FALSE) +{ + // + // First of all, clear the list. + // + ClearServicesList(); + + // + // Now, we can list the services. + // + + // Open the Service Control Manager. + SC_HANDLE hSCManager = OpenSCManagerW(NULL, NULL, SC_MANAGER_ENUMERATE_SERVICE); + if (hSCManager == NULL) + return; + + // Enumerate all the Win32 services. + DWORD dwBytesNeeded = 0; + DWORD dwNumServices = 0; + // DWORD dwResumeHandle = 0; + EnumServicesStatusExW(hSCManager, SC_ENUM_PROCESS_INFO, SERVICE_WIN32, SERVICE_STATE_ALL, NULL, 0, &dwBytesNeeded, &dwNumServices, NULL /* &dwResumeHandle */, NULL); + // if (GetLastError() == ERROR_MORE_DATA) + + LPENUM_SERVICE_STATUS_PROCESS lpServices = (LPENUM_SERVICE_STATUS_PROCESS)MemAlloc(0, dwBytesNeeded); + if (!lpServices) + { + CloseServiceHandle(hSCManager); + return; + } + EnumServicesStatusExW(hSCManager, SC_ENUM_PROCESS_INFO, SERVICE_WIN32, SERVICE_STATE_ALL, (LPBYTE)lpServices, dwBytesNeeded, &dwBytesNeeded, &dwNumServices, NULL /* &dwResumeHandle */, NULL); + + // Add them into the list. + for (DWORD i = 0 ; i < dwNumServices ; ++i) + { + AddService(hSCManager, lpServices + i, bHideOSVendorServices); + } + + // Cleaning. + MemFree(lpServices); + CloseServiceHandle(hSCManager); + + return; +} + +INT_PTR CALLBACK +RequiredServicesDisablingDialogWndProc(HWND hDlg, + UINT message, + WPARAM wParam, + LPARAM lParam) +{ + UNREFERENCED_PARAMETER(lParam); + + switch (message) + { + case WM_INITDIALOG: + { + /* Correctly display message strings */ + LPCWSTR szOSVendor; + size_t itemLength = 0; + LPWSTR szItem = NULL, szNewItem = NULL; + + szOSVendor = (bIsWindows ? IDS_WINDOWS : IDS_REACTOS); + + itemLength = GetWindowTextLength(GetDlgItem(hDlg, IDC_STATIC_REQSVCSDIS_INFO)) + 1; + szItem = (LPWSTR)MemAlloc(0, itemLength * sizeof(WCHAR)); + GetDlgItemText(hDlg, IDC_STATIC_REQSVCSDIS_INFO, szItem, (int)itemLength); + szNewItem = FormatString(szItem, szOSVendor); + SetDlgItemText(hDlg, IDC_STATIC_REQSVCSDIS_INFO, szNewItem); + MemFree(szNewItem); + MemFree(szItem); + + return TRUE; + } + + case WM_COMMAND: + { + switch (LOWORD(wParam)) + { + case IDOK: + { + if (Button_GetCheck(GetDlgItem(hDlg, IDC_CBX_REQSVCSDIS_NO_MSG_ANYMORE)) == BST_CHECKED) + RegisterNoMsgAnymore(); + + EndDialog(hDlg, LOWORD(wParam)); + return TRUE; + } + + case IDCANCEL: + EndDialog(hDlg, LOWORD(wParam)); + return TRUE; + + default: + //break; + return FALSE; + } + } + } + + return FALSE; +} + +static BOOL ValidateItem(int index, BOOL bNewState, BOOL bDisplayErrors) +{ + ServiceItem* pSvcItem = NULL; + + LVITEM truc = {}; + truc.mask = LVIF_PARAM; + truc.iItem = index; + ListView_GetItem(hServicesListCtrl, &truc); + + // The lParam member must be valid. + pSvcItem = reinterpret_cast(truc.lParam); + if (!pSvcItem) + return FALSE; + + // + // Allow modifications only if the service is not a required service for the system, + // or allow only the activation of a disabled required service. + // + BOOL bOldState = !!(ListView_GetCheckState(hServicesListCtrl, truc.iItem /* == index */) % 2); + + if ( !pSvcItem->m_bIsRequired || + (pSvcItem->m_bIsRequired && !pSvcItem->m_bIsEnabled && bOldState == FALSE && bNewState == TRUE) ) + { + if (bOldState == bNewState) + return FALSE; + + ListView_SetCheckState(hServicesListCtrl, index, bNewState); + + if (pSvcItem->m_bIsEnabled) // Enabled service. + { + if (bNewState == FALSE) // To be deactivated. + { + userModificationsList.AddTail(pSvcItem->m_lpszSvcName); + } + else if (bNewState == TRUE) // To be reactivated + { + POSITION it = userModificationsList.Find(pSvcItem->m_lpszSvcName); + if (it) + { + userModificationsList.RemoveAt(it); + } + else + { + OutputDebugString(_T("(1) \"WTF: What The Fukhurmajalmahamadahaldeliya ?!\" (The Dictator, Sacha Baron Cohen)\n")); + } + } + } + else // Disabled service. + { + if (bNewState == TRUE) // To be activated. + { + userModificationsList.AddTail(pSvcItem->m_lpszSvcName); + } + else if (bNewState == FALSE) // To be redeactivated + { + POSITION it = userModificationsList.Find(pSvcItem->m_lpszSvcName); + if (it) + { + userModificationsList.RemoveAt(it); + } + else + { + OutputDebugString(_T("(2) \"WTF: What The Fukhurmajalmahamadahaldeliya ?!\" (The Dictator, Sacha Baron Cohen)\n")); + } + } + } + + return TRUE; + } + else + { + if (bDisplayErrors) + { + DialogBoxW(hInst, MAKEINTRESOURCEW(IDD_REQUIRED_SERVICES_DISABLING_DIALOG), hServicesPage /* hMainWnd */, RequiredServicesDisablingDialogWndProc); + } + + return FALSE; + } +} + + +static void +Update_Btn_States(HWND hDlg) +{ + // HWND hTree = GetDlgItem(hDlg, IDC_SYSTEM_TREE); + + // + // "Enable all" / "Disable all" buttons. + // + // UINT uRootCheckState = TreeView_GetRealSubtreeState(hTree, TVI_ROOT); + UINT uRootCheckState = ListView_GetCheckState(hServicesListCtrl, 0); +#define OP(a, b) ((a) == (b) ? (a) : 2) + int index = 0; // -1 // From the beginning + 1. + while ((index = ListView_GetNextItem(hServicesListCtrl, index, LVNI_ALL)) != -1) + { + UINT temp = ListView_GetCheckState(hServicesListCtrl, index); + uRootCheckState = OP(uRootCheckState, temp); + } + + if (uRootCheckState == 0) + { + EnableWindow(GetDlgItem(hDlg, IDC_BTN_SERVICES_ACTIVATE) , TRUE ); + EnableWindow(GetDlgItem(hDlg, IDC_BTN_SERVICES_DEACTIVATE), FALSE); + } + else if (uRootCheckState == 1) + { + EnableWindow(GetDlgItem(hDlg, IDC_BTN_SERVICES_ACTIVATE) , FALSE); + EnableWindow(GetDlgItem(hDlg, IDC_BTN_SERVICES_DEACTIVATE), TRUE ); + } + else if (uRootCheckState == 2) + { + EnableWindow(GetDlgItem(hDlg, IDC_BTN_SERVICES_ACTIVATE) , TRUE); + EnableWindow(GetDlgItem(hDlg, IDC_BTN_SERVICES_DEACTIVATE), TRUE); + } + else + { + EnableWindow(GetDlgItem(hDlg, IDC_BTN_SERVICES_ACTIVATE) , FALSE); + EnableWindow(GetDlgItem(hDlg, IDC_BTN_SERVICES_DEACTIVATE), FALSE); + } + + return; +} + +extern "C" { + +INT_PTR CALLBACK +ServicesPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) +{ + UNREFERENCED_PARAMETER(lParam); + UNREFERENCED_PARAMETER(wParam); + + switch (message) + { + case WM_INITDIALOG: + { + hServicesPage = hDlg; + hServicesListCtrl = GetDlgItem(hServicesPage, IDC_SERVICES_LIST); + + // + // Correctly display message strings. + // + LPCWSTR szOSVendor = (bIsWindows ? IDS_MICROSOFT : IDS_REACTOS); + + size_t itemLength = 0; + LPWSTR szItem = NULL, szNewItem = NULL; + + itemLength = GetWindowTextLength(GetDlgItem(hServicesPage, IDC_STATIC_SERVICES_WARNING)) + 1; + szItem = (LPWSTR)MemAlloc(0, itemLength * sizeof(WCHAR)); + GetDlgItemText(hServicesPage, IDC_STATIC_SERVICES_WARNING, szItem, (int)itemLength); + szNewItem = FormatString(szItem, szOSVendor); + SetDlgItemText(hServicesPage, IDC_STATIC_SERVICES_WARNING, szNewItem); + MemFree(szNewItem); + MemFree(szItem); + + itemLength = GetWindowTextLength(GetDlgItem(hServicesPage, IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS)) + 1; + szItem = (LPWSTR)MemAlloc(0, itemLength * sizeof(WCHAR)); + GetDlgItemText(hServicesPage, IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, szItem, (int)itemLength); + szNewItem = FormatString(szItem, szOSVendor); + SetDlgItemText(hServicesPage, IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS, szNewItem); + MemFree(szNewItem); + MemFree(szItem); + + // + // Initialize the styles. + // + DWORD dwStyle = ListView_GetExtendedListViewStyle(hServicesListCtrl); + ListView_SetExtendedListViewStyle(hServicesListCtrl, dwStyle | LVS_EX_FULLROWSELECT | LVS_EX_CHECKBOXES); + /** SetWindowTheme(hServicesListCtrl, _T("Explorer"), NULL); // TODO: activate this only if Windows >= XP **/ + + // + // Initialize the application page's controls. + // + LVCOLUMN column = {}; + + // First column : Service's name. + column.mask = LVCF_TEXT | LVCF_WIDTH; + column.pszText = LoadResourceString(hInst, IDS_SERVICES_COLUMN_SERVICE); + column.cx = 150; + ListView_InsertColumn(hServicesListCtrl, 0, &column); + MemFree(column.pszText); + + // Second column : Whether the service is required or not. + column.mask = LVCF_TEXT | LVCF_WIDTH; + column.pszText = LoadResourceString(hInst, IDS_SERVICES_COLUMN_REQ); + column.cx = 60; + ListView_InsertColumn(hServicesListCtrl, 1, &column); + MemFree(column.pszText); + + // Third column : Service's vendor. + column.mask = LVCF_TEXT | LVCF_WIDTH; + column.pszText = LoadResourceString(hInst, IDS_SERVICES_COLUMN_VENDOR); + column.cx = 150; + ListView_InsertColumn(hServicesListCtrl, 2, &column); + MemFree(column.pszText); + + // Fourth column : Service's status. + column.mask = LVCF_TEXT | LVCF_WIDTH; + column.pszText = LoadResourceString(hInst, IDS_SERVICES_COLUMN_STATUS); + column.cx = 60; + ListView_InsertColumn(hServicesListCtrl, 3, &column); + MemFree(column.pszText); + + // Fifth column : Service's disabled date. + column.mask = LVCF_TEXT | LVCF_WIDTH; + column.pszText = LoadResourceString(hInst, IDS_SERVICES_COLUMN_DATEDISABLED); + column.cx = 120; + ListView_InsertColumn(hServicesListCtrl, 4, &column); + MemFree(column.pszText); + + // + // Populate and sort the list. + // + GetServices(); + ListView_Sort(hServicesListCtrl, 0); + Update_Btn_States(hDlg); + + // Select the first item. + ListView_SetItemState(hServicesListCtrl, 0, LVIS_SELECTED, LVIS_SELECTED); + + return TRUE; + } + + case WM_DESTROY: + { + ClearServicesList(); + userModificationsList.RemoveAll(); + return 0; + } + + case WM_COMMAND: + { + switch (LOWORD(wParam)) + { + case IDC_BTN_SERVICES_ACTIVATE: + { + BOOL bAreThereModifs = FALSE; + + int index = -1; // From the beginning. + while ((index = ListView_GetNextItem(hServicesListCtrl, index, LVNI_ALL)) != -1) + { + bAreThereModifs = ValidateItem(index, TRUE, FALSE) || bAreThereModifs; // The order is verrrrrry important !!!! + } + + if (bAreThereModifs) + { + Update_Btn_States(hDlg); + PropSheet_Changed(GetParent(hServicesPage), hServicesPage); + } + + return TRUE; + } + + case IDC_BTN_SERVICES_DEACTIVATE: + { + BOOL bAreThereModifs = FALSE; + + int index = -1; // From the beginning. + while ((index = ListView_GetNextItem(hServicesListCtrl, index, LVNI_ALL)) != -1) + { + bAreThereModifs = ValidateItem(index, FALSE, FALSE) || bAreThereModifs; // The order is verrrrrry important !!!! + } + + if (bAreThereModifs) + { + Update_Btn_States(hDlg); + PropSheet_Changed(GetParent(hServicesPage), hServicesPage); + } + + return TRUE; + } + + case IDC_CBX_SERVICES_MASK_PROPRIETARY_SVCS: + { + bMaskProprietarySvcs = !bMaskProprietarySvcs; + GetServices(bMaskProprietarySvcs); + Update_Btn_States(hDlg); + + return TRUE; + } + + default: + return FALSE; + } + return FALSE; + } + + case UM_CHECKSTATECHANGE: + { + BOOL bNewCheckState = !!((ListView_GetCheckState(hServicesListCtrl, int(lParam)) + 1) % 2); + + if (ValidateItem(/*reinterpret_cast*/ int(lParam), bNewCheckState, !HideEssentialServiceWarning())) + { + Update_Btn_States(hDlg); + PropSheet_Changed(GetParent(hServicesPage), hServicesPage); + } + + return TRUE; + } + + case WM_NOTIFY: + { + if (reinterpret_cast(lParam)->hwndFrom == hServicesListCtrl) + { + switch (reinterpret_cast(lParam)->code) + { + case NM_CLICK: + case NM_RCLICK: + { + DWORD dwpos = GetMessagePos(); + LVHITTESTINFO ht = {}; + ht.pt.x = GET_X_LPARAM(dwpos); + ht.pt.y = GET_Y_LPARAM(dwpos); + MapWindowPoints(HWND_DESKTOP /*NULL*/, hServicesListCtrl, &ht.pt, 1); + + /* + * We use ListView_SubItemHitTest(...) and not ListView_HitTest(...) + * because ListView_HitTest(...) returns bad flags when one clicks + * on a sub-item different from 0. The flags then contain LVHT_ONITEMSTATEICON + * which must not be obviously present in this case. + */ + ListView_SubItemHitTest(hServicesListCtrl, &ht); + + if (LVHT_ONITEMSTATEICON & ht.flags) + { + PostMessage(hDlg, UM_CHECKSTATECHANGE, 0, (LPARAM)ht.iItem); + + // Disable default behaviour. Needed for the UM_CHECKSTATECHANGE + // custom notification to work as expected. + SetWindowLongPtr(hDlg, DWLP_MSGRESULT, TRUE); + } + + return TRUE; + } + + case NM_DBLCLK: + case NM_RDBLCLK: + { + // We deactivate double-clicks. + SetWindowLongPtr(hDlg, DWLP_MSGRESULT, TRUE); + return TRUE; + } + + case LVN_KEYDOWN: + { + if (reinterpret_cast(lParam)->wVKey == VK_SPACE) + { + int iItem = ListView_GetSelectionMark(hServicesListCtrl); + PostMessage(hDlg, UM_CHECKSTATECHANGE, 0, (LPARAM)iItem); + + // Disable default behaviour. Needed for the UM_CHECKSTATECHANGE + // custom notification to work as expected. + SetWindowLongPtr(hDlg, DWLP_MSGRESULT, TRUE); + } + + return TRUE; + } + + case LVN_COLUMNCLICK: + { + int iSortingColumn = reinterpret_cast(lParam)->iSubItem; + + ListView_SortEx(hServicesListCtrl, iSortingColumn, iSortedColumn); + iSortedColumn = iSortingColumn; + + return TRUE; + } + } + } + else + { + switch (reinterpret_cast(lParam)->code) + { + case PSN_APPLY: + { + // Try to apply the modifications to the system. + MessageBox(NULL, _T("In Services page: PSN_APPLY"), _T("Info"), MB_ICONINFORMATION); + + /* + // + // Move this away... + // + int iRetVal = MessageBox(NULL, _T("Would you really want to modify the configuration of your system ?"), _T("Warning"), MB_ICONWARNING | MB_YESNOCANCEL); + + if (iRetVal == IDYES /\* modifications are OK *\/) + SetWindowLongPtr(hServicesPage, DWLP_MSGRESULT, PSNRET_NOERROR); + else if (iRetVal == IDNO /\* modifications are not OK *\/) + SetWindowLongPtr(hServicesPage, DWLP_MSGRESULT, PSNRET_NOERROR); + else // if (iRetVal == IDCANCEL) // There was an error... + SetWindowLongPtr(hServicesPage, DWLP_MSGRESULT, PSNRET_INVALID); + */ + + // + // We modify the services which are stored in the user modification list. + // + + // 1- Open the Service Control Manager for modifications. + SC_HANDLE hSCManager = OpenSCManagerW(NULL, NULL, SC_MANAGER_ALL_ACCESS); + if (hSCManager != NULL) + { + LPCWSTR svcName; + + for (POSITION it = userModificationsList.GetHeadPosition(); it; userModificationsList.GetNext(it)) + { + svcName = userModificationsList.GetAt(it); + + // 2- Retrieve a handle to the service. + SC_HANDLE hService = OpenServiceW(hSCManager, svcName, SERVICE_QUERY_CONFIG | SERVICE_CHANGE_CONFIG); + if (hService == NULL) + { + // TODO : Show a message box. + continue; + } + + DWORD dwBytesNeeded = 0; + QueryServiceConfigW(hService, NULL, 0, &dwBytesNeeded); + // if (GetLastError() == ERROR_INSUFFICIENT_BUFFER) + + LPQUERY_SERVICE_CONFIG lpServiceConfig = (LPQUERY_SERVICE_CONFIG)MemAlloc(0, dwBytesNeeded); + if (!lpServiceConfig) + { + CloseServiceHandle(hService); + continue; // TODO ? Show a message box... + } + QueryServiceConfigW(hService, lpServiceConfig, dwBytesNeeded, &dwBytesNeeded); + + if (lpServiceConfig->dwStartType == SERVICE_DISABLED) // We have a disabled service which is becoming to be enabled. + { + // 3a- Retrive the properties of the disabled service from the registry. + RegistryDisabledServiceItemParams params = {}; + + QUERY_REGISTRY_KEYS_TABLE KeysQueryTable[2] = {}; + KeysQueryTable[0].QueryRoutine = GetRegistryKeyedDisabledServicesQueryRoutine; + KeysQueryTable[0].EntryContext = ¶ms; + RegQueryRegistryKeys(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig\\services", KeysQueryTable, (PVOID)svcName); + + if (bIsWindows && bIsOSVersionLessThanVista && !params.bIsPresent) + { + QUERY_REGISTRY_VALUES_TABLE ValuesQueryTable[2] = {}; + ValuesQueryTable[0].QueryRoutine = GetRegistryValuedDisabledServicesQueryRoutine; + ValuesQueryTable[0].EntryContext = ¶ms; + RegQueryRegistryValues(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig\\services", ValuesQueryTable, (PVOID)svcName); + } + + if (params.bIsPresent) + { + // 4a- Modify the service. + ChangeServiceConfigW(hService, SERVICE_NO_CHANGE, params.dwStartType, SERVICE_NO_CHANGE, NULL, NULL, NULL, NULL, NULL, NULL, NULL); + + // 5a- Remove the registry entry of the service. + if (params.bIsKeyed) + { + CAtlStringW serviceRegKey(L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig\\services\\"); + serviceRegKey += svcName; + RegDeleteKeyW(HKEY_LOCAL_MACHINE, serviceRegKey); + + /***** HACK for Windows < Vista (e.g. 2000, Xp, 2003...) *****/ + // + // Delete also the valued-entry of the service. + // + if (bIsWindows && bIsOSVersionLessThanVista) + { + HKEY hSubKey = NULL; + if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig\\services", 0, KEY_SET_VALUE /*KEY_READ*/, &hSubKey) == ERROR_SUCCESS) + { + RegDeleteValue(hSubKey, svcName); + RegCloseKey(hSubKey); + } + } + /*************************************************************/ + } + else + { + HKEY hSubKey = NULL; + if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig\\services", 0, KEY_SET_VALUE /*KEY_READ*/, &hSubKey) == ERROR_SUCCESS) + { + RegDeleteValue(hSubKey, svcName); + RegCloseKey(hSubKey); + } + } + + ////////// HACKHACKHACKHACKHACKHACKHACKHACKHACKHACKHACK /////////// + // userModificationsList.RemoveAt(it); + } + else + { + // Ohoh !! We have a very big problem. + MessageBox(NULL, _T("WTF ??"), _T("FATAL ERROR !!!!"), MB_ICONERROR); + } + } + else // We have an enabled service which is becoming to be disabled. + { + // 3b- Retrieve the local time of disabling. + SYSTEMTIME disableDate = {}; + GetLocalTime(&disableDate); + + // 4b- Modify the service. + ChangeServiceConfigW(hService, SERVICE_NO_CHANGE, SERVICE_DISABLED, SERVICE_NO_CHANGE, NULL, NULL, NULL, NULL, NULL, NULL, NULL); + + // 5b- Register the service into the registry. + CAtlStringW serviceRegKey(L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig\\services\\"); + serviceRegKey += svcName; + HKEY hSubKey = NULL; + if (RegCreateKeyEx(HKEY_LOCAL_MACHINE, serviceRegKey, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_SET_VALUE, NULL, &hSubKey, NULL) == ERROR_SUCCESS) + { + RegSetDWORDValue(hSubKey, NULL, svcName, FALSE, lpServiceConfig->dwStartType); + + #if 1 // DisableDate + RegSetDWORDValue(hSubKey, NULL, L"DAY" , FALSE, disableDate.wDay ); + RegSetDWORDValue(hSubKey, NULL, L"HOUR" , FALSE, disableDate.wHour ); + RegSetDWORDValue(hSubKey, NULL, L"MINUTE", FALSE, disableDate.wMinute); + RegSetDWORDValue(hSubKey, NULL, L"MONTH" , FALSE, disableDate.wMonth ); + RegSetDWORDValue(hSubKey, NULL, L"SECOND", FALSE, disableDate.wSecond); + RegSetDWORDValue(hSubKey, NULL, L"YEAR" , FALSE, disableDate.wYear ); + #endif + + RegCloseKey(hSubKey); + } + + /***** HACK for Windows < Vista (e.g. 2000, Xp, 2003...) *****/ + // + // Save also a valued-entry for the service. + // + if (bIsWindows && bIsOSVersionLessThanVista) + { + RegSetDWORDValue(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Shared Tools\\MSConfig\\services", svcName, TRUE, lpServiceConfig->dwStartType); + } + /*************************************************************/ + + ////////// HACKHACKHACKHACKHACKHACKHACKHACKHACKHACKHACK /////////// + // userModificationsList.RemoveAt(it); + } + + MemFree(lpServiceConfig); + CloseServiceHandle(hService); + } + + //////////// HACK HACK !!!! //////////// + userModificationsList.RemoveAll(); + //////////////////////////////////////// + + CloseServiceHandle(hSCManager); + + + //// PropSheet_UnChanged(GetParent(hServicesPage), hServicesPage); //// + PropSheet_CancelToClose(GetParent(hDlg)); + + /* Modifications are OK */ + SetWindowLongPtr(hServicesPage, DWLP_MSGRESULT, PSNRET_NOERROR); + } + else + { + MessageBox(hDlg, _T("Impossible to open the SC manager..."), _T("Error"), MB_ICONERROR); + + // There was an error... + SetWindowLongPtr(hServicesPage, DWLP_MSGRESULT, PSNRET_INVALID); + } + + GetServices(bMaskProprietarySvcs); + Update_Btn_States(hDlg); + + return TRUE; + } + + case PSN_HELP: + { + MessageBox(hServicesPage, _T("Help not implemented yet!"), _T("Help"), MB_ICONINFORMATION | MB_OK); + return TRUE; + } + + case PSN_KILLACTIVE: // Is going to lose activation. + { + // Changes are always valid of course. + SetWindowLongPtr(hServicesPage, DWLP_MSGRESULT, FALSE); + return TRUE; + } + + case PSN_QUERYCANCEL: + { + // RefreshStartupList(); + + // Allows cancellation. + SetWindowLongPtr(hServicesPage, DWLP_MSGRESULT, FALSE); + + return TRUE; + } + + case PSN_QUERYINITIALFOCUS: + { + // Give the focus on and select the first item. + ListView_SetItemState(hServicesListCtrl, 0, LVIS_FOCUSED | LVIS_SELECTED, LVIS_FOCUSED | LVIS_SELECTED); + + SetWindowLongPtr(hServicesPage, DWLP_MSGRESULT, (LONG_PTR)hServicesListCtrl); + return TRUE; + } + + // + // DO NOT TOUCH THESE NEXT MESSAGES, THEY ARE OK LIKE THIS... + // + case PSN_RESET: // Perform final cleaning, called before WM_DESTROY. + return TRUE; + + case PSN_SETACTIVE: // Is going to gain activation. + { + SetWindowLongPtr(hServicesPage, DWLP_MSGRESULT, 0); + return TRUE; + } + + default: + break; + } + } + } + + default: + return FALSE; + } + + return FALSE; +} + +} diff --git a/reactos/base/applications/msconfig_new/srvpage.h b/reactos/base/applications/msconfig_new/srvpage.h index b6f63650dd9..f2ed4388824 100644 --- a/reactos/base/applications/msconfig_new/srvpage.h +++ b/reactos/base/applications/msconfig_new/srvpage.h @@ -1,9 +1,7 @@ -#ifndef _SVRPAGE_H_ -#define _SVRPAGE_H_ - -extern HWND hServicesPage; -extern HWND hServicesListCtrl; +#ifndef _SRVPAGE_H_ +#define _SRVPAGE_H_ +DWORD GetServicesActivation(VOID); INT_PTR CALLBACK ServicesPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam); -#endif /* _SVRPAGE_H_ */ +#endif diff --git a/reactos/base/applications/msconfig_new/toolspage.cpp b/reactos/base/applications/msconfig_new/toolspage.cpp index bf442e4781d..4cd571525a0 100644 --- a/reactos/base/applications/msconfig_new/toolspage.cpp +++ b/reactos/base/applications/msconfig_new/toolspage.cpp @@ -121,7 +121,7 @@ ParseToolsList(IXMLDOMDocument* pXMLDom, BOOL bIsStandard) static void AddItem(BOOL bIsStandard, const _bstr_t& name, const _bstr_t& descr, TOOL* tool) { - LPTSTR lpszStandard; + LPWSTR lpszStandard; LVITEM item = {}; assert(tool); @@ -132,7 +132,7 @@ AddItem(BOOL bIsStandard, const _bstr_t& name, const _bstr_t& descr, TOOL* tool) item.pszText = (LPWSTR)name; item.iSubItem = 0; // item.iItem = ListView_GetItemCount(hToolsListCtrl); - + ListView_InsertItem(hToolsListCtrl, &item); if (bIsStandard) @@ -243,7 +243,7 @@ static void Update_States(int iSelectedItem) if (ListView_GetItem(hToolsListCtrl, &item)) // (item.iItem > -1) // TODO: corriger ailleurs ce genre de code... { - LPTSTR lpszCmdLine = NULL; + LPWSTR lpszCmdLine = NULL; size_t numOfChars = 0; tool = reinterpret_cast(item.lParam); @@ -266,19 +266,19 @@ static void Update_States(int iSelectedItem) (Button_GetCheck(GetDlgItem(hToolsPage, IDC_CBX_TOOLS_ADVOPT)) == BST_CHECKED) ) { numOfChars = BuildCommandLine(NULL, tool->m_Command, tool->m_AdvParam, 0); - lpszCmdLine = new WCHAR[numOfChars]; + lpszCmdLine = (LPWSTR)MemAlloc(0, numOfChars * sizeof(WCHAR)); BuildCommandLine(lpszCmdLine, tool->m_Command, tool->m_AdvParam, numOfChars); } else { numOfChars = BuildCommandLine(NULL, tool->m_Command, tool->m_DefParam, 0); - lpszCmdLine = new WCHAR[numOfChars]; + lpszCmdLine = (LPWSTR)MemAlloc(0, numOfChars * sizeof(WCHAR)); BuildCommandLine(lpszCmdLine, tool->m_Command, tool->m_DefParam, numOfChars); } SendDlgItemMessage(hToolsPage, IDC_TOOLS_CMDLINE, WM_SETTEXT, 0, (LPARAM)lpszCmdLine); - delete[] lpszCmdLine; + MemFree(lpszCmdLine); } else { @@ -471,7 +471,7 @@ ToolsPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) MessageBoxW(hToolsPage, L"Help not implemented yet!", L"Help", MB_ICONINFORMATION | MB_OK); return TRUE; } - + case PSN_KILLACTIVE: // Is going to lose activation. { // Changes are always valid of course. diff --git a/reactos/base/applications/msconfig_new/utils.c b/reactos/base/applications/msconfig_new/utils.c index d4f647b896b..4fabe2942a3 100644 --- a/reactos/base/applications/msconfig_new/utils.c +++ b/reactos/base/applications/msconfig_new/utils.c @@ -60,7 +60,7 @@ FormatDateTime(IN LPSYSTEMTIME pDateTime) if ( (iDateBufSize > 0) && (iTimeBufSize > 0) ) { - lpszDateTime = (LPWSTR)MemAlloc(0, (iDateBufSize + iTimeBufSize) * sizeof(TCHAR)); + lpszDateTime = (LPWSTR)MemAlloc(0, (iDateBufSize + iTimeBufSize) * sizeof(WCHAR)); GetDateFormatW(LOCALE_USER_DEFAULT, /* Only for Windows 7 : DATE_AUTOLAYOUT | */ DATE_SHORTDATE, @@ -97,11 +97,11 @@ LoadResourceStringEx(IN HINSTANCE hInstance, // When passing a zero-length buffer size, LoadString(...) returns a // read-only pointer buffer to the program's resource string. - iStrSize = LoadString(hInstance, uID, (LPTSTR)&lpszResourceString, 0); + iStrSize = LoadStringW(hInstance, uID, (LPWSTR)&lpszResourceString, 0); if ( lpszResourceString && ( (lpszDestBuf = (LPWSTR)MemAlloc(0, (iStrSize + 1) * sizeof(WCHAR))) != NULL ) ) { - _tcsncpy(lpszDestBuf, lpszResourceString, iStrSize); + wcsncpy(lpszDestBuf, lpszResourceString, iStrSize); lpszDestBuf[iStrSize] = L'\0'; // NULL-terminate the string if (pSize) @@ -233,8 +233,8 @@ GetExecutableVendor(IN LPCWSTR lpszFilename) LPVOID pvData = NULL; UINT BufLen = 0; WORD wCodePage = 0, wLangID = 0; - LPTSTR lpszStrFileInfo = NULL; - + LPWSTR lpszStrFileInfo = NULL; + LPWSTR lpszData = NULL; if (lpszFilename == NULL) return NULL; diff --git a/reactos/base/applications/msconfig_new/xmldomparser.cpp b/reactos/base/applications/msconfig_new/xmldomparser.cpp index 75bf08d4204..2359725f3fb 100644 --- a/reactos/base/applications/msconfig_new/xmldomparser.cpp +++ b/reactos/base/applications/msconfig_new/xmldomparser.cpp @@ -71,7 +71,7 @@ CreateAndInitXMLDOMDocument(IXMLDOMDocument** ppDoc) return hr; /* These methods should not fail so don't inspect result */ - (*ppDoc)->put_async(VARIANT_FALSE); + (*ppDoc)->put_async(VARIANT_FALSE); (*ppDoc)->put_validateOnParse(VARIANT_FALSE); (*ppDoc)->put_resolveExternals(VARIANT_FALSE); diff --git a/reactos/base/applications/msconfig_new/xmldomparser.hpp b/reactos/base/applications/msconfig_new/xmldomparser.hpp index b61f284ab0f..73528dfb934 100644 --- a/reactos/base/applications/msconfig_new/xmldomparser.hpp +++ b/reactos/base/applications/msconfig_new/xmldomparser.hpp @@ -41,7 +41,7 @@ #ifndef IID_PPV_ARGS extern "C++" { - template void** IID_PPV_ARGS_Helper(T** pp) + template void** IID_PPV_ARGS_Helper(T** pp) { static_cast(*pp); // make sure everyone derives from IUnknown return reinterpret_cast(pp);