53 Commits
release ... v4

Author SHA1 Message Date
jazir5
06c1cb02d6 Update Enable GamesDows Playnite.bat 2024-12-20 15:00:51 -08:00
jazir5
d49ff27ad4 Update Enable GamesDows Steam V3.bat 2024-12-20 14:54:14 -08:00
jazir5
7e842382cf Update Enable GamesDows Steam V3.bat 2024-12-20 14:48:01 -08:00
jazir5
ac3ff0bb1b Update README.md 2024-11-24 23:30:05 -08:00
jazir5
a5af0188b1 Update README.md 2024-11-03 19:31:53 -08:00
jazir5
e6b15506fd Update README.md 2024-11-03 19:31:09 -08:00
jazir5
6e5d28bf6b Update Enable GamesDows Playnite.bat 2024-11-01 18:07:43 -07:00
jazir5
c1125b3376 Update Enable GamesDows Playnite.bat 2024-11-01 18:03:08 -07:00
jazir5
8ca56ed459 Update Enable GamesDows Playnite.bat 2024-11-01 18:01:28 -07:00
jazir5
a5c0d26e6f Update Enable GamesDows Playnite.bat 2024-11-01 17:58:06 -07:00
jazir5
d883fd4115 Update Enable GamesDows Playnite.bat 2024-11-01 17:56:54 -07:00
jazir5
5f1428c7e3 Update README.md 2024-11-01 17:55:39 -07:00
jazir5
51d6fab016 Update README.md 2024-10-24 16:20:22 -07:00
jazir5
345f25cbad Update README.md 2024-10-24 16:19:40 -07:00
jazir5
38358751d5 Update README.md 2024-10-24 16:15:36 -07:00
jazir5
e0f9bf46d6 Update README.md 2024-10-24 01:30:11 -07:00
jazir5
befd6aa4f2 Update README.md 2024-10-17 03:22:46 -07:00
jazir5
bc141c3e1a Update README.md 2024-10-17 03:22:26 -07:00
jazir5
d1b7a444e2 Rename Enable GamesDows V3.bat to Enable GamesDows Steam V3.bat 2024-10-16 21:53:19 -07:00
jazir5
0c84d93c33 Update and rename Enable GamesDows V2 Testing.bat to Enable GamesDows V3.bat 2024-10-16 21:51:40 -07:00
jazir5
d250d40338 Update Enable GamesDows V2 Testing.bat 2024-10-16 21:47:24 -07:00
jazir5
7e4caac315 Update and rename Enable GamesDows.bat to Enable GamesDows V2 Testing.bat 2024-10-16 21:45:58 -07:00
jazir5
14313ea3f1 Delete Disable GamesDows.bat 2024-10-13 14:29:18 -07:00
jazir5
59ae9686d2 Create Disable Gamesdows V2.bat
V2 of the Disable Gamesdows script
2024-10-12 21:48:02 -07:00
jazir5
deba33efaf Update Enable GamesDows Playnite.bat 2024-10-12 21:37:39 -07:00
jazir5
55e2475630 Update Enable GamesDows.bat 2024-10-12 21:36:35 -07:00
jazir5
4153a4336c Update Enable GamesDows.bat
Changed query user to whoami
2024-10-12 21:35:23 -07:00
jazir5
b744ddd6c4 Update README.md 2024-10-04 15:18:01 -07:00
jazir5
5e34182874 Update README.md 2024-09-05 17:18:08 -07:00
jazir5
e4f338cd8e Update README.md 2024-09-05 17:17:20 -07:00
jazir5
15a435d27d Update README.md 2024-09-05 17:16:59 -07:00
jazir5
4fe8c7940b Create Set explorer as shell.reg 2024-09-05 17:13:18 -07:00
jazir5
48252f8b93 Update README.md 2024-08-31 17:01:42 -07:00
jazir5
6c3af61908 Update README.md 2024-08-31 17:01:19 -07:00
jazir5
be6a79d69e GamesDows Playnite variant based on GamesDows V1 2024-08-31 16:57:18 -07:00
jazir5
f75b84da19 Delete Enable GamesDows Playnite.bat 2024-08-31 15:15:45 -07:00
jazir5
c182353a1c Delete Enable GamesDows v2.bat 2024-08-31 15:15:31 -07:00
jazir5
fbcfb0233a Update README.md 2024-08-30 14:47:43 -07:00
jazir5
ddd8f47539 Update README.md 2024-08-30 14:46:47 -07:00
jazir5
60e74326b5 Update README.md 2024-08-30 14:46:21 -07:00
jazir5
db866f23ff Update README.md 2024-08-30 14:44:54 -07:00
jazir5
3955f66bab Update README.md 2024-08-30 14:44:30 -07:00
jazir5
aa634a73cd Update README.md 2024-08-30 14:44:02 -07:00
jazir5
03500223c3 Update README.md 2024-08-30 14:42:18 -07:00
jazir5
0c480d73cc Update README.md 2024-08-30 14:42:03 -07:00
jazir5
95af8c00c2 Update Disable GamesDows.bat 2024-08-26 18:48:36 -07:00
jazir5
3bcc7e23ca Rename Enable.GamesDows.v2.bat to Enable GamesDows v2.bat 2024-08-26 18:45:24 -07:00
jazir5
aed71b8b75 Add files via upload 2024-08-26 18:45:09 -07:00
jazir5
510c83c9e6 Update README.md 2024-08-26 15:06:07 -07:00
jazir5
53f85a79f2 Update README.md 2024-08-26 15:05:32 -07:00
jazir5
5f34c3463d Playnite Version
A variant with Playnite set as the shell instead of Steam
2024-08-24 20:54:20 -07:00
jazir5
18cd022c6a Update Enable GamesDows.bat 2024-07-16 19:19:50 -07:00
jazir5
f9856390eb Update README.md 2024-07-03 23:16:04 -07:00
6 changed files with 263 additions and 58 deletions

View File

@@ -1,34 +0,0 @@
@echo off
SETLOCAL EnableExtensions EnableDelayedExpansion
echo Reverting changes and setting default shell back to Explorer
:: Reset the default shell to Explorer
SET "EXPLORER_PATH=C:\Windows\explorer.exe"
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "C:\Windows\explorer.exe" /f
:: Define the default Steam folder path
SET "STEAM_FOLDER=C:\Program Files (x86)\Steam"
:: Delete the DelayedExplorerStart.bat script and related files
SET "SCRIPT_NAME=DelayedExplorerStart.bat"
SET "SCRIPT_PATH=%STEAM_FOLDER%\%SCRIPT_NAME%"
IF EXIST "%SCRIPT_PATH%" DEL "%SCRIPT_PATH%"
SET "VBS_NAME=RunBatchSilently.vbs"
SET "VBS_PATH=%STEAM_FOLDER%\%VBS_NAME%"
IF EXIST "%VBS_PATH%" DEL "%VBS_PATH%"
SET "XML_NAME=DelayedExplorerStartTask.xml"
SET "XML_PATH=%STEAM_FOLDER%\%XML_NAME%"
IF EXIST "%XML_PATH%" DEL "%XML_PATH%"
:: Delete the scheduled task
schtasks /delete /tn "RunDelayedExplorerStart" /f
:: Enable the boot UI
bcdedit.exe -set {globalsettings} bootuxdisabled off
echo Reversion complete. Default settings restored.
pause

89
Disable Gamesdows V2.bat Normal file
View File

@@ -0,0 +1,89 @@
@echo off
SETLOCAL EnableExtensions EnableDelayedExpansion
:: Define paths and names
SET "STEAM_FOLDER=C:\Program Files (x86)\Steam"
SET "SCRIPT_NAME=DelayedExplorerStart.bat"
SET "SCRIPT_PATH=%STEAM_FOLDER%\%SCRIPT_NAME%"
SET "VBS_NAME=RunBatchSilently.vbs"
SET "VBS_PATH=%STEAM_FOLDER%\%VBS_NAME%"
SET "XML_NAME=DelayedExplorerStartTask.xml"
SET "XML_PATH=%STEAM_FOLDER%\%XML_NAME%"
echo ================================
echo Disabling GamesDows
echo ================================
:: Reset the default shell to Explorer
echo [1/5] Resetting default shell to Explorer...
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "C:\Windows\explorer.exe" /f
if ERRORLEVEL 1 (
echo [ERROR] Failed to reset the default shell.
goto end
) else (
echo [SUCCESS] Default shell reset to Explorer.
)
:: Terminate Steam processes to ensure changes take effect
echo [2/5] Terminating Steam processes...
taskkill /IM "Steam.exe" /F >nul 2>&1
taskkill /IM "SteamService.exe" /F >nul 2>&1
echo [INFO] Steam processes terminated.
:: Delete the DelayedExplorerStart.bat script
echo [3/5] Deleting DelayedExplorerStart.bat...
IF EXIST "%SCRIPT_PATH%" (
DEL /F /Q "%SCRIPT_PATH%"
if ERRORLEVEL 1 (
echo [WARNING] Could not delete %SCRIPT_NAME%.
) else (
echo [SUCCESS] %SCRIPT_NAME% deleted.
)
) else (
echo [INFO] %SCRIPT_NAME% does not exist.
)
:: Delete the RunBatchSilently.vbs script
echo [4/5] Deleting RunBatchSilently.vbs...
IF EXIST "%VBS_PATH%" (
DEL /F /Q "%VBS_PATH%"
if ERRORLEVEL 1 (
echo [WARNING] Could not delete %VBS_NAME%.
) else (
echo [SUCCESS] %VBS_NAME% deleted.
)
) else (
echo [INFO] %VBS_NAME% does not exist.
)
:: Delete the DelayedExplorerStartTask.xml file
echo [5/5] Deleting DelayedExplorerStartTask.xml...
IF EXIST "%XML_PATH%" (
DEL /F /Q "%XML_PATH%"
if ERRORLEVEL 1 (
echo [WARNING] Could not delete %XML_NAME%.
) else (
echo [SUCCESS] %XML_NAME% deleted.
)
) else (
echo [INFO] %XML_NAME% does not exist.
)
:: Delete the scheduled task
echo [6/6] Deleting scheduled task 'RunDelayedExplorerStart'...
schtasks /delete /tn "RunDelayedExplorerStart" /f >nul 2>&1
if ERRORLEVEL 1 (
echo [WARNING] Could not delete the scheduled task 'RunDelayedExplorerStart'.
) else (
echo [SUCCESS] Scheduled task 'RunDelayedExplorerStart' deleted.
)
echo.
echo ================================
echo GamesDows has been disabled successfully.
echo A system restart is recommended for all changes to take effect.
echo ================================
:end
ENDLOCAL
pause

View File

@@ -0,0 +1,137 @@
@echo off
SETLOCAL EnableExtensions EnableDelayedExpansion
echo Setting Playnite as default shell
SET "KEY_NAME=HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
SET "VALUE_NAME=Shell"
SET "PLAYNITE_FOLDER=%LOCALAPPDATA%\Playnite"
SET "PLAYNITE_PATH=%LOCALAPPDATA%\Playnite\Playnite.FullscreenApp.exe"
REG ADD "%KEY_NAME%" /v %VALUE_NAME% /t REG_SZ /d "%PLAYNITE_PATH%" /f
SET "SCRIPT_NAME=DelayedExplorerStart.bat"
SET "SCRIPT_PATH=%PLAYNITE_FOLDER%\%SCRIPT_NAME%"
SET "EXPLORER_PATH=C:\Windows\explorer.exe"
SET "VBS_NAME=RunBatchSilently.vbs"
SET "VBS_PATH=%PLAYNITE_FOLDER%\%VBS_NAME%"
echo Creating DelayedExplorerStart.bat script
echo Create the DelayedExplorerStart.bat script in the Playnite folder
(
echo @echo off
echo rem Check if user is logged on
echo whoami ^| find /i "%USERNAME%" ^>nul
echo if ERRORLEVEL 1 exit
echo rem Set Shell back to Explorer
echo REG ADD "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "%EXPLORER_PATH%" /f
echo timeout /t 20 /nobreak ^>nul
echo start C:\Windows\explorer.exe
echo timeout /t 10 /nobreak ^>nul
echo REG ADD "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "%PLAYNITE_PATH%" /f
) > "%SCRIPT_PATH%"
echo %VBS_PATH%
echo Creating RunBatchSilently.vbs script
rem Create VBScript to run the batch file silently
echo Set WshShell = CreateObject("WScript.Shell") > "%VBS_PATH%"
echo WshShell.Run chr(34)^&"%SCRIPT_PATH%"^&chr(34), 0, True >> "%VBS_PATH%"
echo Set WshShell = Nothing >> "%VBS_PATH%"
echo Create XML file for the scheduled task
SET XML_PATH=%PLAYNITE_FOLDER%\DelayedExplorerStartTask.xml
echo Delete the existing XML file if it exists
IF EXIST "%XML_PATH%" DEL "%XML_PATH%"
(
echo ^<?xml version="1.0" encoding="UTF-16"?^>
echo ^<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task"^>
echo ^<RegistrationInfo^>
echo ^<Date^>2020-01-01T00:00:00^</Date^>
echo ^<Author^>"%USERNAME%"^</Author^>
echo ^<Description^>Run DelayedExplorerStart.bat at logon.^</Description^>
echo ^</RegistrationInfo^>
echo ^<Triggers^>
echo ^<LogonTrigger^>
echo ^<Enabled^>true^</Enabled^>
echo ^</LogonTrigger^>
echo ^</Triggers^>
echo ^<Principals^>
echo ^<Principal id="Author"^>
echo ^<UserId^>%USERNAME%</UserId^>
echo ^<LogonType^>InteractiveToken^</LogonType^>
echo ^<RunLevel^>HighestAvailable^</RunLevel^>
echo ^</Principal^>
echo ^</Principals^>
echo ^<Settings^>
echo ^<MultipleInstancesPolicy^>IgnoreNew^</MultipleInstancesPolicy^>
echo ^<DisallowStartIfOnBatteries^>false^</DisallowStartIfOnBatteries^>
echo ^<StopIfGoingOnBatteries^>false^</StopIfGoingOnBatteries^>
echo ^<AllowHardTerminate^>true^</AllowHardTerminate^>
echo ^<StartWhenAvailable^>true^</StartWhenAvailable^>
echo ^<RunOnlyIfNetworkAvailable^>false^</RunOnlyIfNetworkAvailable^>
echo ^<IdleSettings^>
echo ^<StopOnIdleEnd^>true^</StopOnIdleEnd^>
echo ^<RestartOnIdle^>false^</RestartOnIdle^>
echo ^</IdleSettings^>
echo ^<Enabled^>true^</Enabled^>
echo ^<Hidden^>false^</Hidden^>
echo ^<WakeToRun^>false^</WakeToRun^>
echo ^<ExecutionTimeLimit^>PT72H^</ExecutionTimeLimit^>
echo ^<Priority^>7^</Priority^>
echo ^</Settings^>
echo ^<Actions Context="Author"^>
echo ^<Exec^>
echo ^<Command^>wscript.exe^</Command^>
echo ^<Arguments^>"%VBS_PATH%"^</Arguments^>
echo ^</Exec^>
echo ^</Actions^>
echo ^</Task^>
) > "%XML_PATH%"
echo Delete the existing scheduled task if it exists
schtasks /delete /tn "RunDelayedExplorerStart" /f /ru "%USERNAME%"
echo Create the scheduled task using the XML file
schtasks /create /tn "RunDelayedExplorerStart" /xml "%XML_PATH%" /ru "%USERNAME%"
echo Delayed Explorer start script and VBScript created in Playnite folder.
echo Scheduled Task added to run the script at logon.
echo XML file for Scheduled Task created.
echo Disable the boot UI
bcdedit.exe -set {globalsettings} bootuxdisabled on
echo Disable Logon UI
reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DisableLogonUI /t REG_DWORD /d 1 /f
echo Disable Visual Effects
reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v VisualEffects /t REG_DWORD /d 3 /f
echo Increase File System Performance
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem" /v NtfsDisableLastAccessUpdate /t REG_DWORD /d 1 /f
echo Optimize Paging File Performance
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v DisablePagingExecutive /t REG_DWORD /d 1 /f
echo Disable Startup Delay
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Serialize" /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Serialize" /v StartupDelayInMSec /t REG_DWORD /d 0 /f
echo Improve Windows Explorer Process Priority
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\explorer.exe\PerfOptions" /v CpuPriorityClass /t REG_DWORD /d 3 /f
echo Adjust Large System Cache
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v LargeSystemCache /t REG_DWORD /d 1 /f
echo Enabling No GUI Boot
bcdedit /set {current} quietboot on
echo Registry modifications are complete.
echo Playnite set as default shell.
echo Automatic logon enabled.
echo Boot UI disabled.
pause

View File

@@ -4,12 +4,11 @@ SETLOCAL EnableExtensions
echo Setting Steam Big Picture as default shell
echo Set Steam Big Picture as the default shell
SET "KEY_NAME=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
SET "KEY_NAME=HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
SET "VALUE_NAME=Shell"
SET "STEAM_PATH=C:\Program Files (x86)\Steam\Steam.exe -bigpicture -nobootstrapupdate -skipinitialbootstrap -skipverifyfiles"
REG ADD "%KEY_NAME%" /v %VALUE_NAME% /t REG_SZ /d "%STEAM_PATH%" /f
@echo off
SETLOCAL EnableExtensions EnableDelayedExpansion
@@ -18,21 +17,37 @@ SET "STEAM_FOLDER=C:\Program Files (x86)\Steam"
SET "SCRIPT_NAME=DelayedExplorerStart.bat"
SET "SCRIPT_PATH=%STEAM_FOLDER%\%SCRIPT_NAME%"
SET "EXPLORER_PATH=C:\Windows\explorer.exe"
SET "MANIFEST_PATH=%STEAM_PATH%.manifest"
:: Create the manifest file to force admin privileges for Steam
echo Creating manifest file for Steam to run as admin...
(
echo ^<?xml version="1.0" encoding="UTF-8" standalone="yes"?^>
echo ^<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"^>
echo ^<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"^>
echo ^<security^>
echo ^<requestedPrivileges^>
echo ^<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/^>
echo ^</requestedPrivileges^>
echo ^</security^>
echo ^</trustInfo^>
echo ^</assembly^>
) > "%MANIFEST_PATH%"
echo Creating DelayedExplorerStart.bat script
echo Create the DelayedExplorerStart.bat script in the Steam folder
(
echo @echo off
echo Check if user is logged on
echo query user ^| find /i "%USERNAME%" ^>nul
echo rem Check if user is logged on
echo whoami ^| find /i "%USERNAME%" ^>nul
echo if ERRORLEVEL 1 exit
echo Set Shell back to Explorer
echo REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "%EXPLORER_PATH%" /f
echo rem Set Shell back to Explorer
echo REG ADD "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "%EXPLORER_PATH%" /f
echo timeout /t 20 /nobreak ^>nul
echo start C:\Windows\explorer.exe
echo timeout /t 10 /nobreak ^>nul
echo REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "%STEAM_PATH%" /f
echo REG ADD "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "%STEAM_PATH%" /f
) > "%SCRIPT_PATH%"
@@ -101,26 +116,21 @@ echo ^</Task^>
) > "%XML_PATH%"
echo Delete the existing scheduled task if it exists
schtasks /delete /tn "RunDelayedExplorerStart" /f
schtasks /delete /tn "RunDelayedExplorerStart" /f /ru "%USERNAME%"
echo Create the scheduled task using the XML file
schtasks /create /tn "RunDelayedExplorerStart" /xml "%XML_PATH%"
schtasks /create /tn "RunDelayedExplorerStart" /xml "%XML_PATH%" /ru "%USERNAME%"
echo Delayed Explorer start script and VBScript created in Steam folder.
echo Scheduled Task added to run the script at logon.
echo XML file for Scheduled Task created.
echo Enable automatic logon
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoAdminLogon /t REG_SZ /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserName /t REG_SZ /d "%USERNAME%" /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultPassword /t REG_SZ /d "" /f
echo Disable the boot UI
bcdedit.exe -set {globalsettings} bootuxdisabled on
echo Disable Logon UI
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DisableLogonUI /t REG_DWORD /d 1 /f
reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DisableLogonUI /t REG_DWORD /d 1 /f
echo Disable Visual Effects
reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v VisualEffects /t REG_DWORD /d 3 /f

View File

@@ -1,13 +1,15 @@
Transform your Windows Computer into a Video Game console first, PC second!
**This script is a WIP. Currently, the main functionality works as intended. Steam Big Picture launches automatically when the OS boots, then explorer starts automatically after a delay, which allows you to exit to desktop via the menu without needing to launch a shortcut for Explorer.exe first.**
**This script is a WIP. Currently, the main functionality works as intended. Steam Big Picture (or Playnite) launches automatically when the OS boots with high priority set as as the shell, then explorer starts automatically after a delay, which allows you to exit to desktop via the menu without needing to launch a shortcut for Explorer.exe first.**
**Note: Steam must be installed, you must be signed in to Steam, and finally the Steam Autostart entry in task manager must be disabled/deleted before running the script.**
**Note: Steam or Playnite must be installed, you must be signed in to Steam if using the Steam variant, and finally the Steam Autostart entry in task manager must be disabled/deleted before running the script.**
**This script must be run as admin!**
# GamesDows
The Enable GamesDows batch script makes Windows boot straight into Steam Big Picture without displaying any Explorer UI elements to ensure a Game Console like experience on Windows. I made this because I have a Steam Deck and I want the experience to mirror that of Steam OS as closely as possible. However, this will work on any Windows PC, the commands are not specific to the Steam Deck.
The Enable GamesDows batch script makes Windows boot straight into Steam Big Picture or Playnite without displaying any Explorer UI elements to ensure a Game Console like experience on Windows. I made this because I have a Steam Deck and I want the experience to mirror that of Steam OS as closely as possible. However, this will work on any Windows PC, the commands are not specific to the Steam Deck.
**How the main functionality works: The enable Game Mode batch script sets steam big picture as the shell > batch launches steam as lower privileged (so the virtual mouse and keyboard don't work on system prompts such as task manager yet, it needs to run as admin to fix that. One of the 4 remaining problems) The enable Game Mode batch script creates a VBS script to suppress the command prompt window set as the shell at boot > The VBS script launches a second batch script created by the enable script run as admin > The second batch script is run by a scheduled task after a 20 second delay > delayed explorer batch script resets the shell to to explorer.exe, then launches explorer in the background so that it's possible to exit big picture without running a shortcut (menu performs as expected and exits directly to desktop).**
**How the main functionality works: The enable Game Mode batch script sets steam big picture as the shell and creates a manifest file in the Steam folder which allows it to always start as admin. The enable Game Mode batch script creates a VBS script to suppress the command prompt window when Explorer.exe launches in the background > The VBS script launches a second batch script created by the enable script creates and launches the second batch script via a scheduled task after a 20 second delay > delayed explorer batch script resets the shell to to explorer.exe, then launches explorer in the background so that it's possible to exit big picture without running a shortcut (menu performs as expected and exits directly to desktop without manually launching a separate shortcut).**
After another delay once explorer.exe is started (it retains elevated permissions once started), the default shell is reset to Steam Big Picture so that it boots directly to Big Picture as expected upon reboot.
@@ -58,12 +60,12 @@ What remains to be fixed:
1. Completely suppressing the taskbar from appearing when Windows Explorer automatically launches in the background. The taskbar displays temporarily for ~1 second when explorer.exe launches, which makes it appear over the Big Picture UI; and then it disappears. This is not intended behavior, and it is visually distracting.
2. Disabling the Windows welcome sign-in UI animation (user picture, user name, spinning wheel) entirely. Currently the Boot logo is removed as intended, and the script is set to log the user account which ran the script in automatically. The welcome sign-in animation still remains, and will be disabled in future versions of the script. Going to have to write a custom C++ application to do so since there is no off the shelf way to disable the Welcome Screen on Windows 11.
2. Disabling the Windows welcome sign-in UI animation (user picture, user name, spinning wheel) entirely. Currently the Boot logo is removed as intended, and the script is set to log the user account which ran the script in automatically. The welcome sign-in animation still remains, and will be disabled in future versions of the script. Going to have to write a custom C++ application or a custom credential provider to do so since there is no off the shelf way to disable the Welcome Screen on Windows 11.
3. Setting Steam to start as admin (VBS script to suppress the command prompt window set as the shell at boot > VBS script launches the batch script > batch sets steam big picture as the shell > batch launches steam as admin > delayed explorer batch script resets the shell to the VBS script so Steam launches as the default shell at boot.)
4. Disabling the Steam client update window which displays momentarily when Steam updates (this only occurs when the Steam Client has an update, otherwise it will not appear) before launching Big Picture.
3. Disabling the Steam client update window which displays momentarily when Steam updates (this only occurs when the Steam Client has an update, otherwise it will not appear) before launching Big Picture.
**Please let me know if you have any issues with existing functionality and I'll try to get the bugs fixed up if any arise.**
I will gladly take PRs to fix the 4 remaining issues if anyone knows how to solve them.
I will gladly take PRs to fix the 3 remaining issues if anyone knows how to solve them.
**Note: If for any reason explorer doesn't start and you get a black screen and cannot view the desktop, it needs to be launched manually via task manager by launching explorer.exe. It needs to be set as the shell first before it is launched from task manager for the desktop to appear when launched a single time, otherwise it will just launch a file browser window. Due to this limitation, you must start explorer.exe twice from task manager to load the Desktop**

View File

@@ -0,0 +1 @@
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "C:\Windows\explorer.exe" /f