[WINLOGON] Implement shutdown sound support

CORE-13951
This commit is contained in:
Thamatip Chitpong 2024-12-04 00:19:26 +07:00
parent 77bfc12e0f
commit 37375fcc4d

View file

@ -367,13 +367,17 @@ PlayLogonSound(
static
VOID
PlayLogoffSound(
_In_ PWLSESSION Session)
PlayLogoffShutdownSound(
_In_ PWLSESSION Session,
_In_ BOOL bShutdown)
{
if (!ImpersonateLoggedOnUser(Session->UserToken))
return;
PlaySoundRoutine(L"WindowsLogoff", FALSE, SND_ALIAS | SND_NODEFAULT);
/* NOTE: Logoff and shutdown sounds play synchronously */
PlaySoundRoutine(bShutdown ? L"SystemExit" : L"WindowsLogoff",
FALSE,
SND_ALIAS | SND_NODEFAULT);
RevertToSelf();
}
@ -848,7 +852,7 @@ HandleLogoff(
SwitchDesktop(Session->WinlogonDesktop);
PlayLogoffSound(Session);
PlayLogoffShutdownSound(Session, WLX_SHUTTINGDOWN(wlxAction));
SetWindowStationUser(Session->InteractiveWindowStation,
&LuidNone, NULL, 0);