2 个个人资料

2 个个人资料

我有一个 Steam Deck,我将其与 Windows 进行了双启动。我试图在 Steam OS 上实现“游戏模式”的复制。

我希望自动/极快地启动到大屏幕,以便它首先主要作为游戏机运行,然后能够通过 Steam 中的菜单退出到桌面。

我知道可以通过更改注册表项将 shell 从 explorer.exe 切换到 Steam 作为 shell:

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell

"C:\Program Files (x86)\Steam\Steam.exe" -bigpicture

我不确定在启动文件夹中放置 explorer.exe 的快捷方式是否允许我退出并返回 Windows 桌面,而无需进行任何操作,例如在 Steam 中创建 explorer.exe 的快捷方式(必须先启动)。

如果这不管用,还有其他选择吗?我希望这个过程尽可能流畅,这样 Steam 中的退出桌面菜单项就可以按预期运行。

答案1

将 explorer 设置为启动程序可能会导致它和 Big Picture 同时启动。您可能需要编写自己的 shell 替换程序。

我建议用 PowerShell 脚本替换 shell,该脚本将调用 Big Picture,等待它终止,然后调用 Explorer。

有用的参考资料:

编辑1:

根据用户@LPChip 所做的测试,替换 shell 需要终止,以便 Explorer 明白它需要创建桌面。

在这种情况下,我建议将 PowerShell 脚本分成两个脚本,其中第一个脚本启动 Big Picture 并等待其终止,然后启动第二个脚本等待其父脚本终止,然后启动 Explorer 并终止自身。

为了使第二个脚本独立于其父脚本,最好使用帖子中的方法 从 PowerShell 启动无父进程

编辑2:

我研究了主 Explorer 的启动方式,以及命令是C:\Windows\explorer.exe /NoUACCheck来自名为的计划任务的 CreateExplorerShellUnelevatedTask

用户@LPChip 已验证此命令与 /NoUACCheck参数会导致 Explorer 显示桌面,但关闭 Explorer 时它会自动重新启动。要阻止这种情况发生,需要在注册表项中 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon将该项目设置AutoRestartShell 为零。

答案2

您可以替换 shell 并设置 steam 的大图片模式,但您将丢失桌面环境,直到您重新设置 shell 并注销并再次登录。

因此,我建议采取略有不同的方法。

有两种不同的方法来解决这个问题,取决于您要寻找什么。

2 个个人资料

您可以在系统上创建第二个用户,并将其命名为 steam。将其 shell 设置为 steam 大屏幕模式,如果您登录该用户,您将获得 steam。如果您注销并返回到普通用户,您将再次获得普通桌面体验。您甚至可以让两个用户同时登录,只需切换即可快速来回切换。

保持其运行并休眠 SteamDeck,而不是关闭

现代 Windows 10 和 Windows 11 默认设置了混合关机。这基本上意味着当您按下“开始”->“关机”时,所有程序都会终止,然后您的空白桌面将进入休眠状态。

如果您再次启动计算机,桌面将从休眠状态恢复,并调用您的启动脚本。

鉴于已经使用了休眠模式,那么选择关机而不是让系统进入休眠状态并且所有程序仍在运行实在是没有意义的。

最大的区别是,当您重新打开 SteamDeck 时,您会立即获得您的桌面,您在几秒钟内打开的程序,而不必等待启动序列。

您可以关闭 steam 的大画面,然后打开它,或者从 steam 的大画面中让计算机休眠。

我敢打赌,甚至可以将自定义游戏添加到 Steam,将其链接到使 SteamDeck 休眠的脚本shutdown -h,这样你基本上就可以获得你想要的体验。

相关内容