[MSGINA][SYSSETUP] Implement Friendly UI shutdown dialog (#2762)

Can be activated by installing ReactOS as a Workstation. CORE-12805

References:
- https://www.remkoweijnen.nl/blog/2009/01/16/windows-xp-x64-terminal-server-patch-part-2-optional/
- https://www.remkoweijnen.nl/blog/2011/01/30/using-fast-user-switching-on-domain-xp-computers/

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
This commit is contained in:
Vladimir Barinov 2020-05-09 15:54:52 +03:00 committed by Stanislav Motylkov
parent 247c189263
commit 2edcb58e65
No known key found for this signature in database
GPG key ID: AFE513258CBA9E92
27 changed files with 383 additions and 72 deletions

View file

@ -1484,6 +1484,7 @@ HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon","ConsoleShell",0x00
HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon","Shell",0x00020000,"%SystemRoot%\explorer.exe"
HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon","Userinit",0x00020000,"%SystemRoot%\system32\userinit.exe"
HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon","AutoAdminLogon",0x00000000,"1"
HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon","LogonType",0x00010001,0
HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon","DefaultDomainName",0x00000000,""
HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon","DefaultUserName",0x00000000,""
HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon","DefaultPassword",0x00000000,""

View file

@ -172,12 +172,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Изключване на РеактОС"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "Slee&p", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Изключване", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Restart", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Отказ", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -177,12 +177,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Vypnout ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "&Uspat", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Vypnout", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Restartovat", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Storno", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -172,12 +172,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "ReactOS herunterfahren"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "&Schlafmodus", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Herunterfahren", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Neustart", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Abbrechen", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -173,12 +173,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Shut Down ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "Slee&p", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Shut Down", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Restart", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Cancel", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -181,12 +181,17 @@ BEGIN
DEFPUSHBUTTON "Aceptar", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Apagar ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "&Suspender", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Apagar", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Reiniciar", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Cancelar", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -172,12 +172,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Arrêt de ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "Mettre en &veille", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "Éteindr&e", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Redémarrer", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Annuler", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -172,12 +172,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Shut Down ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "Slee&p", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Shut Down", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Restart", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Cancel", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -173,12 +173,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP stílusú leállítási párbeszédpanel."
CAPTION "ReactOS leállítása"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "&Alvás", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Leállítás", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Új&raindítás", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Mégse", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -172,12 +172,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Nonaktifkan ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "&Tidur", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Nonaktifkan", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Mulai &Ulang", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Batal", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -181,12 +181,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Spegnimento di ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "Sos&pendi", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Spegni", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Riavvia", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Annulla", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -177,12 +177,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
FONT 9,"MS UI Gothic", 400, 0, 1
CAPTION "ReactOS のシャットダウン"
FONT 9, "MS UI Gothic"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "スリープ(&P)", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "シャットダウン(&S)", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "再起動(&R)", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "キャンセル", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -172,12 +172,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Slå av ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "Slee&p", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Shut Down", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Restart", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Avbryt", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -183,12 +183,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Okno zamykania w stylu motywu Luna"
CAPTION "Zamknij ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "&Uśpij", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Wyłącz", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Uruchom &ponownie", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Anuluj", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -173,12 +173,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Estilo-Luna-XP- Dialogo 'Desligar'"
CAPTION "Desligar o computador"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "&Suspender", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Desligar", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Reiniciar", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Cancelar", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -181,12 +181,17 @@ BEGIN
DEFPUSHBUTTON "Î&nchide", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Închidere ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "Con&firmă", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "&Stare de veghe", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "Închi&dere", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Repornire", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "A&nulează", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -174,12 +174,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Завершение работы ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "&Спящий режим", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Выключить", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Перезапустить", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Отмена", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -177,12 +177,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Vypnutie systému ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "Slee&p", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Shut Down", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Restart", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Zrušiť", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -176,12 +176,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Shut Down ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "Slee&p", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Shut Down", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Restart", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Anulo", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -174,12 +174,17 @@ BEGIN
DEFPUSHBUTTON "Tamam", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna XP Biçiminde Bilgisayarı Kapat İletişim Kutusu"
CAPTION "Bilgisayarı Kapat"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "Tamam", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "&Uykuya Geçir", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "Bilgi&sayarı", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Yeniden &Başlat", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "İptal", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -180,12 +180,17 @@ BEGIN
DEFPUSHBUTTON "OK", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "Завершення роботи ReactOS"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "&Сон", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "&Вимкнути", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "&Перезавантажити", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "Скасувати", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -175,12 +175,17 @@ BEGIN
DEFPUSHBUTTON "确定", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "关闭 ReactOS"
FONT 9, "宋体"
BEGIN
DEFPUSHBUTTON "确定", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "睡眠状态(&P)", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "关闭(&S)", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "重新启动(&R)", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "取消", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -174,12 +174,17 @@ BEGIN
DEFPUSHBUTTON "確定", IDOK, 115, 179, 50, 14
END
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 146
IDD_SHUTDOWN_FANCY DIALOGEX 0, 0, 275, 135
STYLE NOT WS_VISIBLE | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_BORDER | WS_CAPTION | WS_DLGFRAME | WS_POPUP
CAPTION "Luna-XP-style Shut Down dialog"
CAPTION "關閉 ReactOS"
FONT 9, "新細明體"
BEGIN
DEFPUSHBUTTON "OK", IDOK, 80, 122, 55, 14, WS_GROUP
CONTROL IDI_ROSLOGO, IDC_ROSLOGO, "Static", SS_BITMAP, 0, 0, 275, 54
CONTROL IDI_BAR, IDC_BAR, "Static", SS_BITMAP, 0, 44, 275, 4
PUSHBUTTON "睡眠狀態(&P)", IDC_BUTTON_SLEEP, 37, 63, 55, 31, BS_MULTILINE | WS_GROUP
PUSHBUTTON "關閉(&S)", IDC_BUTTON_SHUTDOWN, 109, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "重新開機(&R)", IDC_BUTTON_REBOOT, 182, 63, 55, 31, BS_MULTILINE
PUSHBUTTON "取消", IDCANCEL, 205, 111, 55, 14, WS_GROUP
END
STRINGTABLE

View file

@ -1,6 +1,6 @@
1 stub -noname ShellGetUserList ; (long long long)
2 stub -noname ShellStatusHostEnd ; (long)
3 stdcall -stub -noname ShellIsFriendlyUIActive()
3 stdcall -noname ShellIsFriendlyUIActive()
4 stub -noname ShellIsSuspendAllowed ; ()
5 stub -noname ShellIsRemoteConnectionsEnabled ; ()
6 stub -noname ShellEnableFriendlyUI ; (long)

View file

@ -51,6 +51,10 @@
#define IDC_REASON_DESCRIPTION 2005
#define IDC_REASON_COMMENT 2006
#define IDC_BUTTON_SLEEP 1901
#define IDC_BUTTON_SHUTDOWN 1902
#define IDC_BUTTON_REBOOT 1903
#define IDD_LEGALNOTICE 2100
#define IDC_LEGALNOTICE_TEXT 2101

View file

@ -28,6 +28,7 @@ typedef struct _SHUTDOWN_DLG_CONTEXT
DWORD ShutdownOptions;
BOOL bCloseDlg;
BOOL bReasonUI;
BOOL bFriendlyUI;
} SHUTDOWN_DLG_CONTEXT, *PSHUTDOWN_DLG_CONTEXT;
@ -91,6 +92,148 @@ GetShutdownReasonUI(VOID)
// return (VersionInfo.wProductType == VER_NT_WORKSTATION) ? FALSE : TRUE;
}
static
BOOL
IsFriendlyUIActive(VOID)
{
DWORD dwType, dwValue, dwSize;
HKEY hKey;
LONG lRet;
/* Check product version number first */
lRet = RegOpenKeyExW(HKEY_LOCAL_MACHINE,
L"SYSTEM\\CurrentControlSet\\Control\\Windows",
0,
KEY_QUERY_VALUE,
&hKey);
if (lRet != ERROR_SUCCESS)
return FALSE;
dwValue = 0;
dwSize = sizeof(dwValue);
lRet = RegQueryValueExW(hKey,
L"CSDVersion",
NULL,
&dwType,
(LPBYTE)&dwValue,
&dwSize);
RegCloseKey(hKey);
if (lRet != ERROR_SUCCESS || dwType != REG_DWORD || dwValue != 0x300)
{
/* Allow Friendly UI only on Workstation */
return FALSE;
}
/* Check LogonType value */
lRet = RegOpenKeyExW(HKEY_LOCAL_MACHINE,
L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon",
0,
KEY_QUERY_VALUE,
&hKey);
if (lRet != ERROR_SUCCESS)
return FALSE;
dwValue = 0;
dwSize = sizeof(dwValue);
lRet = RegQueryValueExW(hKey,
L"LogonType",
NULL,
&dwType,
(LPBYTE)&dwValue,
&dwSize);
RegCloseKey(hKey);
if (lRet != ERROR_SUCCESS || dwType != REG_DWORD)
return FALSE;
return (dwValue != 0);
}
static
BOOL
IsDomainMember(VOID)
{
UNIMPLEMENTED;
return FALSE;
}
static
BOOL
IsNetwareActive(VOID)
{
UNIMPLEMENTED;
return FALSE;
}
static
BOOL
ForceFriendlyUI(VOID)
{
DWORD dwType, dwValue, dwSize;
HKEY hKey;
LONG lRet;
lRet = RegOpenKeyExW(HKEY_LOCAL_MACHINE,
L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System",
0,
KEY_QUERY_VALUE,
&hKey);
if (lRet == ERROR_SUCCESS)
{
dwValue = 0;
dwSize = sizeof(dwValue);
lRet = RegQueryValueExW(hKey,
L"ForceFriendlyUI",
NULL,
&dwType,
(LPBYTE)&dwValue,
&dwSize);
RegCloseKey(hKey);
if (lRet == ERROR_SUCCESS && dwType == REG_DWORD)
return (dwValue != 0);
}
lRet = RegOpenKeyExW(HKEY_LOCAL_MACHINE,
L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon",
0,
KEY_QUERY_VALUE,
&hKey);
if (lRet == ERROR_SUCCESS)
{
dwValue = 0;
dwSize = sizeof(dwValue);
lRet = RegQueryValueExW(hKey,
L"ForceFriendlyUI",
NULL,
&dwType,
(LPBYTE)&dwValue,
&dwSize);
RegCloseKey(hKey);
if (lRet == ERROR_SUCCESS && dwType == REG_DWORD)
return (dwValue != 0);
}
return FALSE;
}
BOOL
WINAPI
ShellIsFriendlyUIActive(VOID)
{
BOOL bActive;
bActive = IsFriendlyUIActive();
if ((IsDomainMember() || IsNetwareActive()) && !ForceFriendlyUI())
return FALSE;
return bActive;
}
DWORD
GetDefaultShutdownSelState(VOID)
{
@ -326,6 +469,10 @@ ShutdownOnInit(
if (idx != CB_ERR)
SendMessageW(hwndList, CB_SETITEMDATA, idx, WLX_SAS_ACTION_SHUTDOWN_POWER_OFF);
}
else if (pContext->bFriendlyUI)
{
EnableWindow(GetDlgItem(hDlg, IDC_BUTTON_SHUTDOWN), FALSE);
}
/* Restart */
if (pContext->ShutdownOptions & WLX_SHUTDOWN_STATE_REBOOT)
@ -335,6 +482,10 @@ ShutdownOnInit(
if (idx != CB_ERR)
SendMessageW(hwndList, CB_SETITEMDATA, idx, WLX_SAS_ACTION_SHUTDOWN_REBOOT);
}
else if (pContext->bFriendlyUI)
{
EnableWindow(GetDlgItem(hDlg, IDC_BUTTON_REBOOT), FALSE);
}
// if (pContext->ShutdownOptions & 0x08) {}
@ -346,6 +497,10 @@ ShutdownOnInit(
if (idx != CB_ERR)
SendMessageW(hwndList, CB_SETITEMDATA, idx, WLX_SAS_ACTION_SHUTDOWN_SLEEP);
}
else if (pContext->bFriendlyUI)
{
EnableWindow(GetDlgItem(hDlg, IDC_BUTTON_SLEEP), FALSE);
}
// if (pContext->ShutdownOptions & 0x20) {}
@ -467,6 +622,18 @@ ShutdownDialogProc(
case WM_COMMAND:
switch (LOWORD(wParam))
{
case IDC_BUTTON_SHUTDOWN:
ExitWindowsEx(EWX_SHUTDOWN, SHTDN_REASON_MAJOR_OTHER);
break;
case IDC_BUTTON_REBOOT:
ExitWindowsEx(EWX_REBOOT, SHTDN_REASON_MAJOR_OTHER);
break;
case IDC_BUTTON_SLEEP:
SetSuspendState(TRUE, TRUE, TRUE);
break;
case IDOK:
ShutdownOnOk(hDlg, pContext->pgContext);
@ -497,6 +664,7 @@ ShutdownDialog(
{
INT_PTR ret;
SHUTDOWN_DLG_CONTEXT Context;
DWORD ShutdownDialogId = IDD_SHUTDOWN;
#if 0
DWORD ShutdownOptions;
@ -510,8 +678,9 @@ ShutdownDialog(
Context.ShutdownOptions = ShutdownOptions;
Context.bCloseDlg = FALSE;
Context.bReasonUI = GetShutdownReasonUI();
Context.bFriendlyUI = ShellIsFriendlyUIActive();
if (pgContext->hWlx && pgContext->pWlxFuncs)
if (pgContext->hWlx && pgContext->pWlxFuncs && !Context.bFriendlyUI)
{
ret = pgContext->pWlxFuncs->WlxDialogBoxParam(pgContext->hWlx,
pgContext->hDllInstance,
@ -522,8 +691,13 @@ ShutdownDialog(
}
else
{
if (Context.bFriendlyUI)
{
ShutdownDialogId = IDD_SHUTDOWN_FANCY;
}
ret = DialogBoxParamW(pgContext->hDllInstance,
MAKEINTRESOURCEW(Context.bReasonUI ? IDD_SHUTDOWN_REASON : IDD_SHUTDOWN),
MAKEINTRESOURCEW(Context.bReasonUI ? IDD_SHUTDOWN_REASON : ShutdownDialogId),
hwndDlg,
ShutdownDialogProc,
(LPARAM)&Context);

View file

@ -394,6 +394,7 @@ AckPageDlgProc(HWND hwndDlg,
static const WCHAR s_szProductOptions[] = L"SYSTEM\\CurrentControlSet\\Control\\ProductOptions";
static const WCHAR s_szRosVersion[] = L"SYSTEM\\CurrentControlSet\\Control\\ReactOS\\Settings\\Version";
static const WCHAR s_szControlWindows[] = L"SYSTEM\\CurrentControlSet\\Control\\Windows";
static const WCHAR s_szWinlogon[] = L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon";
typedef struct _PRODUCT_OPTION_DATA
{
@ -401,12 +402,13 @@ typedef struct _PRODUCT_OPTION_DATA
LPCWSTR ProductType;
DWORD ReportAsWorkstation;
DWORD CSDVersion;
DWORD LogonType;
} PRODUCT_OPTION_DATA;
static const PRODUCT_OPTION_DATA s_ProductOptionData[] =
{
{ L"Terminal Server\0", L"ServerNT", 0, 0x200 },
{ L"\0", L"WinNT", 1, 0x300 }
{ L"Terminal Server\0", L"ServerNT", 0, 0x200, 0 },
{ L"\0", L"WinNT", 1, 0x300, 1 }
};
static BOOL
@ -487,6 +489,26 @@ DoWriteProductOption(PRODUCT_OPTION nOption)
goto Error;
}
RegCloseKey(hKey);
/* open Winlogon key */
error = RegOpenKeyExW(HKEY_LOCAL_MACHINE, s_szWinlogon, 0, KEY_WRITE, &hKey);
if (error)
{
DPRINT1("RegOpenKeyExW failed\n");
goto Error;
}
/* write LogonType */
dwValue = pData->LogonType;
cbData = sizeof(dwValue);
error = RegSetValueExW(hKey, L"LogonType", 0, REG_DWORD, (const BYTE *)&dwValue, cbData);
if (error)
{
DPRINT1("RegSetValueExW failed\n");
goto Error;
}
Error:
if (hKey)
RegCloseKey(hKey);