From b665986eb6ed4a24612cf70f134aefd391eb2ec5 Mon Sep 17 00:00:00 2001 From: Eric Kohl Date: Sun, 27 Jul 2014 21:05:42 +0000 Subject: [PATCH] [MSGINA] - Implement the legal notice dialog. - Rename ReadRegSzKey to ReadRegSzValue. - Rename ReadRegDwordKey to ReadRegDwordValue. svn path=/trunk/; revision=63745 --- reactos/dll/win32/msgina/gui.c | 84 ++++++++++++++++++++++++++ reactos/dll/win32/msgina/lang/bg-BG.rc | 9 +++ reactos/dll/win32/msgina/lang/cs-CZ.rc | 9 +++ reactos/dll/win32/msgina/lang/de-DE.rc | 9 +++ reactos/dll/win32/msgina/lang/en-US.rc | 9 +++ reactos/dll/win32/msgina/lang/es-ES.rc | 9 +++ reactos/dll/win32/msgina/lang/fr-FR.rc | 9 +++ reactos/dll/win32/msgina/lang/he-IL.rc | 9 +++ reactos/dll/win32/msgina/lang/id-ID.rc | 9 +++ reactos/dll/win32/msgina/lang/it-IT.rc | 9 +++ reactos/dll/win32/msgina/lang/ja-JP.rc | 9 +++ reactos/dll/win32/msgina/lang/no-NO.rc | 9 +++ reactos/dll/win32/msgina/lang/pl-PL.rc | 9 +++ reactos/dll/win32/msgina/lang/ro-RO.rc | 9 +++ reactos/dll/win32/msgina/lang/ru-RU.rc | 9 +++ reactos/dll/win32/msgina/lang/sk-SK.rc | 9 +++ reactos/dll/win32/msgina/lang/sq-AL.rc | 9 +++ reactos/dll/win32/msgina/lang/tr-TR.rc | 9 +++ reactos/dll/win32/msgina/lang/uk-UA.rc | 9 +++ reactos/dll/win32/msgina/msgina.c | 54 ++++++++--------- reactos/dll/win32/msgina/msgina.h | 6 ++ reactos/dll/win32/msgina/resource.h | 4 ++ 22 files changed, 283 insertions(+), 27 deletions(-) diff --git a/reactos/dll/win32/msgina/gui.c b/reactos/dll/win32/msgina/gui.c index 8293604c078..3da57d00b21 100644 --- a/reactos/dll/win32/msgina/gui.c +++ b/reactos/dll/win32/msgina/gui.c @@ -9,6 +9,7 @@ #include #include +#include typedef struct _DISPLAYSTATUSMSG { @@ -20,6 +21,13 @@ typedef struct _DISPLAYSTATUSMSG HANDLE StartupEvent; } DISPLAYSTATUSMSG, *PDISPLAYSTATUSMSG; +typedef struct _LEGALNOTICEDATA +{ + LPWSTR pszCaption; + LPWSTR pszText; +} LEGALNOTICEDATA, *PLEGALNOTICEDATA; + + static BOOL GUIInitialize( IN OUT PGINA_CONTEXT pgContext) @@ -1162,14 +1170,90 @@ LoggedOutWindowProc( return FALSE; } + +static +INT_PTR +CALLBACK +LegalNoticeDialogProc( + IN HWND hwndDlg, + IN UINT uMsg, + IN WPARAM wParam, + IN LPARAM lParam) +{ + PLEGALNOTICEDATA pLegalNotice; + + switch (uMsg) + { + case WM_INITDIALOG: + pLegalNotice = (PLEGALNOTICEDATA)lParam; + SetWindowTextW(hwndDlg, pLegalNotice->pszCaption); + SetDlgItemTextW(hwndDlg, IDC_LEGALNOTICE_TEXT, pLegalNotice->pszText); + return TRUE; + + case WM_COMMAND: + switch (LOWORD(wParam)) + { + case IDOK: + EndDialog(hwndDlg, 0); + return TRUE; + + case IDCANCEL: + EndDialog(hwndDlg, 0); + return TRUE; + } + break; + } + + return FALSE; +} + + static INT GUILoggedOutSAS( IN OUT PGINA_CONTEXT pgContext) { + LEGALNOTICEDATA LegalNotice = {NULL, NULL}; + HKEY hKey = NULL; + LONG rc; int result; TRACE("GUILoggedOutSAS()\n"); + rc = RegOpenKeyExW(HKEY_LOCAL_MACHINE, + L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon", + 0, + KEY_QUERY_VALUE, + &hKey); + if (rc == ERROR_SUCCESS) + { + ReadRegSzValue(hKey, + L"LegalNoticeCaption", + &LegalNotice.pszCaption); + + ReadRegSzValue(hKey, + L"LegalNoticeText", + &LegalNotice.pszText); + + RegCloseKey(hKey); + } + + if (LegalNotice.pszCaption != NULL && wcslen(LegalNotice.pszCaption) != 0 && + LegalNotice.pszText != NULL && wcslen(LegalNotice.pszText) != 0) + { + pgContext->pWlxFuncs->WlxDialogBoxParam(pgContext->hWlx, + pgContext->hDllInstance, + MAKEINTRESOURCEW(IDD_LEGALNOTICE_DLG), + GetDesktopWindow(), + LegalNoticeDialogProc, + (LPARAM)&LegalNotice); + } + + if (LegalNotice.pszCaption != NULL) + HeapFree(GetProcessHeap(), 0, LegalNotice.pszCaption); + + if (LegalNotice.pszText != NULL) + HeapFree(GetProcessHeap(), 0, LegalNotice.pszText); + result = pgContext->pWlxFuncs->WlxDialogBoxParam( pgContext->hWlx, pgContext->hDllInstance, diff --git a/reactos/dll/win32/msgina/lang/bg-BG.rc b/reactos/dll/win32/msgina/lang/bg-BG.rc index cee7c055f8e..48c47163834 100644 --- a/reactos/dll/win32/msgina/lang/bg-BG.rc +++ b/reactos/dll/win32/msgina/lang/bg-BG.rc @@ -128,6 +128,15 @@ BEGIN PUSHBUTTON "Отказ", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Здравейте!" diff --git a/reactos/dll/win32/msgina/lang/cs-CZ.rc b/reactos/dll/win32/msgina/lang/cs-CZ.rc index 05c71e7f97c..32f720f679e 100644 --- a/reactos/dll/win32/msgina/lang/cs-CZ.rc +++ b/reactos/dll/win32/msgina/lang/cs-CZ.rc @@ -133,6 +133,15 @@ BEGIN PUSHBUTTON "Storno", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Vítejte!" diff --git a/reactos/dll/win32/msgina/lang/de-DE.rc b/reactos/dll/win32/msgina/lang/de-DE.rc index 82d9a6a236c..05323c37dd5 100644 --- a/reactos/dll/win32/msgina/lang/de-DE.rc +++ b/reactos/dll/win32/msgina/lang/de-DE.rc @@ -128,6 +128,15 @@ BEGIN PUSHBUTTON "Abbrechen", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Willkommen!" diff --git a/reactos/dll/win32/msgina/lang/en-US.rc b/reactos/dll/win32/msgina/lang/en-US.rc index c8828ca2313..3c9f78ae8ce 100644 --- a/reactos/dll/win32/msgina/lang/en-US.rc +++ b/reactos/dll/win32/msgina/lang/en-US.rc @@ -128,6 +128,15 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Welcome!" diff --git a/reactos/dll/win32/msgina/lang/es-ES.rc b/reactos/dll/win32/msgina/lang/es-ES.rc index 45a0f3dd9eb..d010c77e748 100644 --- a/reactos/dll/win32/msgina/lang/es-ES.rc +++ b/reactos/dll/win32/msgina/lang/es-ES.rc @@ -130,6 +130,15 @@ BEGIN PUSHBUTTON "Cancelar", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "¡Bienvenido!" diff --git a/reactos/dll/win32/msgina/lang/fr-FR.rc b/reactos/dll/win32/msgina/lang/fr-FR.rc index 4f0d3242a07..e478d64e797 100644 --- a/reactos/dll/win32/msgina/lang/fr-FR.rc +++ b/reactos/dll/win32/msgina/lang/fr-FR.rc @@ -128,6 +128,15 @@ BEGIN PUSHBUTTON "Annuler", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Bienvenue!" diff --git a/reactos/dll/win32/msgina/lang/he-IL.rc b/reactos/dll/win32/msgina/lang/he-IL.rc index bb76396143e..b9c10a38491 100644 --- a/reactos/dll/win32/msgina/lang/he-IL.rc +++ b/reactos/dll/win32/msgina/lang/he-IL.rc @@ -128,6 +128,15 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "ברוכים הבאים!" diff --git a/reactos/dll/win32/msgina/lang/id-ID.rc b/reactos/dll/win32/msgina/lang/id-ID.rc index 6e33eb6a7fe..a1ca38456bb 100644 --- a/reactos/dll/win32/msgina/lang/id-ID.rc +++ b/reactos/dll/win32/msgina/lang/id-ID.rc @@ -128,6 +128,15 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Selamat datang!" diff --git a/reactos/dll/win32/msgina/lang/it-IT.rc b/reactos/dll/win32/msgina/lang/it-IT.rc index 30a3facf970..8367dbdff4e 100644 --- a/reactos/dll/win32/msgina/lang/it-IT.rc +++ b/reactos/dll/win32/msgina/lang/it-IT.rc @@ -137,6 +137,15 @@ BEGIN PUSHBUTTON "Annulla", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Benvenuti!" diff --git a/reactos/dll/win32/msgina/lang/ja-JP.rc b/reactos/dll/win32/msgina/lang/ja-JP.rc index 118f1b10ce8..81b361eef1a 100644 --- a/reactos/dll/win32/msgina/lang/ja-JP.rc +++ b/reactos/dll/win32/msgina/lang/ja-JP.rc @@ -128,6 +128,15 @@ BEGIN PUSHBUTTON "キャンセル", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "ようこそ!" diff --git a/reactos/dll/win32/msgina/lang/no-NO.rc b/reactos/dll/win32/msgina/lang/no-NO.rc index 062cc610a9b..7e7f6e1458c 100644 --- a/reactos/dll/win32/msgina/lang/no-NO.rc +++ b/reactos/dll/win32/msgina/lang/no-NO.rc @@ -128,6 +128,15 @@ BEGIN PUSHBUTTON "Avbryt", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Velkommen!" diff --git a/reactos/dll/win32/msgina/lang/pl-PL.rc b/reactos/dll/win32/msgina/lang/pl-PL.rc index 986522e6d97..16e357f36c7 100644 --- a/reactos/dll/win32/msgina/lang/pl-PL.rc +++ b/reactos/dll/win32/msgina/lang/pl-PL.rc @@ -138,6 +138,15 @@ BEGIN PUSHBUTTON "Anuluj", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Witaj!" diff --git a/reactos/dll/win32/msgina/lang/ro-RO.rc b/reactos/dll/win32/msgina/lang/ro-RO.rc index 853a394f80a..e22352b1c8e 100644 --- a/reactos/dll/win32/msgina/lang/ro-RO.rc +++ b/reactos/dll/win32/msgina/lang/ro-RO.rc @@ -130,6 +130,15 @@ BEGIN PUSHBUTTON "A&nulează", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Bun venit!" diff --git a/reactos/dll/win32/msgina/lang/ru-RU.rc b/reactos/dll/win32/msgina/lang/ru-RU.rc index da9d9756297..10876beebd8 100644 --- a/reactos/dll/win32/msgina/lang/ru-RU.rc +++ b/reactos/dll/win32/msgina/lang/ru-RU.rc @@ -130,6 +130,15 @@ BEGIN PUSHBUTTON "Отмена", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Добро пожаловать!" diff --git a/reactos/dll/win32/msgina/lang/sk-SK.rc b/reactos/dll/win32/msgina/lang/sk-SK.rc index 3b624ab09a1..cd312152239 100644 --- a/reactos/dll/win32/msgina/lang/sk-SK.rc +++ b/reactos/dll/win32/msgina/lang/sk-SK.rc @@ -133,6 +133,15 @@ BEGIN PUSHBUTTON "Zrušiť", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Vitajte!" diff --git a/reactos/dll/win32/msgina/lang/sq-AL.rc b/reactos/dll/win32/msgina/lang/sq-AL.rc index 17257a22837..361616df207 100644 --- a/reactos/dll/win32/msgina/lang/sq-AL.rc +++ b/reactos/dll/win32/msgina/lang/sq-AL.rc @@ -131,6 +131,15 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Mirëseerdhët!" diff --git a/reactos/dll/win32/msgina/lang/tr-TR.rc b/reactos/dll/win32/msgina/lang/tr-TR.rc index b6e731a5353..f030a8d71eb 100644 --- a/reactos/dll/win32/msgina/lang/tr-TR.rc +++ b/reactos/dll/win32/msgina/lang/tr-TR.rc @@ -130,6 +130,15 @@ BEGIN PUSHBUTTON "İptal", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Hoşgeldiniz!" diff --git a/reactos/dll/win32/msgina/lang/uk-UA.rc b/reactos/dll/win32/msgina/lang/uk-UA.rc index 191b3053dd2..3761b450a05 100644 --- a/reactos/dll/win32/msgina/lang/uk-UA.rc +++ b/reactos/dll/win32/msgina/lang/uk-UA.rc @@ -136,6 +136,15 @@ BEGIN PUSHBUTTON "Скасувати", IDCANCEL, 204, 122, 55, 14 END +IDD_LEGALNOTICE_DLG DIALOGEX 0, 0, 280, 200 +STYLE DS_MODALFRAME | DS_SHELLFONT | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "" +FONT 8, "MS Shell Dlg" +BEGIN + EDITTEXT IDC_LEGALNOTICE_TEXT, 7, 7, 266, 165, ES_LEFT | ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14 +END + STRINGTABLE BEGIN IDS_LOGGEDOUTSAS "Ласкаво просимо!" diff --git a/reactos/dll/win32/msgina/msgina.c b/reactos/dll/win32/msgina/msgina.c index 4f5d10cdd2f..6974725befc 100644 --- a/reactos/dll/win32/msgina/msgina.c +++ b/reactos/dll/win32/msgina/msgina.c @@ -57,10 +57,10 @@ WlxNegotiate( return TRUE; } -static LONG -ReadRegSzKey( +LONG +ReadRegSzValue( IN HKEY hKey, - IN LPCWSTR pszKey, + IN LPCWSTR pszValue, OUT LPWSTR* pValue) { LONG rc; @@ -72,7 +72,7 @@ ReadRegSzKey( return ERROR_INVALID_PARAMETER; *pValue = NULL; - rc = RegQueryValueExW(hKey, pszKey, NULL, &dwType, NULL, &cbData); + rc = RegQueryValueExW(hKey, pszValue, NULL, &dwType, NULL, &cbData); if (rc != ERROR_SUCCESS) return rc; if (dwType != REG_SZ) @@ -80,7 +80,7 @@ ReadRegSzKey( Value = HeapAlloc(GetProcessHeap(), 0, cbData + sizeof(WCHAR)); if (!Value) return ERROR_NOT_ENOUGH_MEMORY; - rc = RegQueryValueExW(hKey, pszKey, NULL, NULL, (LPBYTE)Value, &cbData); + rc = RegQueryValueExW(hKey, pszValue, NULL, NULL, (LPBYTE)Value, &cbData); if (rc != ERROR_SUCCESS) { HeapFree(GetProcessHeap(), 0, Value); @@ -94,9 +94,9 @@ ReadRegSzKey( } static LONG -ReadRegDwordKey( +ReadRegDwordValue( IN HKEY hKey, - IN LPCWSTR pszKey, + IN LPCWSTR pszValue, OUT LPDWORD pValue) { LONG rc; @@ -108,7 +108,7 @@ ReadRegDwordKey( return ERROR_INVALID_PARAMETER; cbData = sizeof(DWORD); - rc = RegQueryValueExW(hKey, pszKey, NULL, &dwType, (LPBYTE)&dwValue, &cbData); + rc = RegQueryValueExW(hKey, pszValue, NULL, &dwType, (LPBYTE)&dwValue, &cbData); if (rc == ERROR_SUCCESS && dwType == REG_DWORD) *pValue = dwValue; @@ -131,7 +131,7 @@ ChooseGinaUI(VOID) KEY_QUERY_VALUE, &ControlKey); - rc = ReadRegSzKey(ControlKey, L"SystemStartOptions", &SystemStartOptions); + rc = ReadRegSzValue(ControlKey, L"SystemStartOptions", &SystemStartOptions); if (rc != ERROR_SUCCESS) goto cleanup; @@ -186,9 +186,9 @@ GetRegistrySettings(PGINA_CONTEXT pgContext) return FALSE; } - rc = ReadRegSzKey(hKey, - L"AutoAdminLogon", - &lpAutoAdminLogon); + rc = ReadRegSzValue(hKey, + L"AutoAdminLogon", + &lpAutoAdminLogon); if (rc == ERROR_SUCCESS) { if (wcscmp(lpAutoAdminLogon, L"1") == 0) @@ -197,9 +197,9 @@ GetRegistrySettings(PGINA_CONTEXT pgContext) TRACE("bAutoAdminLogon: %s\n", pgContext->bAutoAdminLogon ? "TRUE" : "FALSE"); - rc = ReadRegDwordKey(hKey, - L"DisableCAD", - &dwDisableCAD); + rc = ReadRegDwordValue(hKey, + L"DisableCAD", + &dwDisableCAD); if (rc == ERROR_SUCCESS) { if (dwDisableCAD != 0) @@ -209,18 +209,18 @@ GetRegistrySettings(PGINA_CONTEXT pgContext) TRACE("bDisableCAD: %s\n", pgContext->bDisableCAD ? "TRUE" : "FALSE"); pgContext->bShutdownWithoutLogon = TRUE; - rc = ReadRegSzKey(hKey, - L"ShutdownWithoutLogon", - &lpShutdownWithoutLogon); + rc = ReadRegSzValue(hKey, + L"ShutdownWithoutLogon", + &lpShutdownWithoutLogon); if (rc == ERROR_SUCCESS) { if (wcscmp(lpShutdownWithoutLogon, L"0") == 0) pgContext->bShutdownWithoutLogon = FALSE; } - rc = ReadRegSzKey(hKey, - L"DontDisplayLastUserName", - &lpDontDisplayLastUserName); + rc = ReadRegSzValue(hKey, + L"DontDisplayLastUserName", + &lpDontDisplayLastUserName); if (rc == ERROR_SUCCESS) { if (wcscmp(lpDontDisplayLastUserName, L"1") == 0) @@ -856,19 +856,19 @@ DoAutoLogon( /* Set it by default to disabled, we might reenable it again later */ pgContext->AutoLogonState = AUTOLOGON_DISABLED; - rc = ReadRegSzKey(WinLogonKey, L"AutoAdminLogon", &AutoLogon); + rc = ReadRegSzValue(WinLogonKey, L"AutoAdminLogon", &AutoLogon); if (rc != ERROR_SUCCESS) goto cleanup; if (wcscmp(AutoLogon, L"1") != 0) goto cleanup; - rc = ReadRegSzKey(WinLogonKey, L"AutoLogonCount", &AutoCount); + rc = ReadRegSzValue(WinLogonKey, L"AutoLogonCount", &AutoCount); if (rc == ERROR_SUCCESS && wcscmp(AutoCount, L"0") == 0) goto cleanup; else if (rc != ERROR_FILE_NOT_FOUND) goto cleanup; - rc = ReadRegSzKey(WinLogonKey, L"IgnoreShiftOverride", &UserName); + rc = ReadRegSzValue(WinLogonKey, L"IgnoreShiftOverride", &UserName); if (rc == ERROR_SUCCESS) { if (wcscmp(AutoLogon, L"1") != 0 && GetKeyState(VK_SHIFT) < 0) @@ -887,13 +887,13 @@ DoAutoLogon( { pgContext->AutoLogonState = AUTOLOGON_DISABLED; - rc = ReadRegSzKey(WinLogonKey, L"DefaultUserName", &UserName); + rc = ReadRegSzValue(WinLogonKey, L"DefaultUserName", &UserName); if (rc != ERROR_SUCCESS) goto cleanup; - rc = ReadRegSzKey(WinLogonKey, L"DefaultDomain", &Domain); + rc = ReadRegSzValue(WinLogonKey, L"DefaultDomain", &Domain); if (rc != ERROR_SUCCESS && rc != ERROR_FILE_NOT_FOUND) goto cleanup; - rc = ReadRegSzKey(WinLogonKey, L"DefaultPassword", &Password); + rc = ReadRegSzValue(WinLogonKey, L"DefaultPassword", &Password); if (rc != ERROR_SUCCESS) goto cleanup; diff --git a/reactos/dll/win32/msgina/msgina.h b/reactos/dll/win32/msgina/msgina.h index eaaf68d0c43..97deda195c0 100644 --- a/reactos/dll/win32/msgina/msgina.h +++ b/reactos/dll/win32/msgina/msgina.h @@ -97,6 +97,12 @@ MyLogonUser( /* msgina.c */ +LONG +ReadRegSzValue( + IN HKEY hKey, + IN LPCWSTR pszValue, + OUT LPWSTR *pValue); + BOOL DoAdminUnlock( IN PGINA_CONTEXT pgContext, diff --git a/reactos/dll/win32/msgina/resource.h b/reactos/dll/win32/msgina/resource.h index cee14bea090..8ac76355743 100644 --- a/reactos/dll/win32/msgina/resource.h +++ b/reactos/dll/win32/msgina/resource.h @@ -34,6 +34,10 @@ #define IDD_LOGOFF_DLG 107 +#define IDD_LEGALNOTICE_DLG 1018 +#define IDC_LEGALNOTICE_TEXT 1019 + + #define IDI_ROSLOGO 20000 #define IDI_SHELL_SHUTDOWN 20001 -- 2.17.1