Windows 8.1 Shell 启动器(嵌入式锁定管理器)未启动 Shell

Windows 8.1 Shell 启动器(嵌入式锁定管理器)未启动 Shell

我正在尝试在嵌入式锁定管理器 (ELM) 中设置 Windows 8.1 Shell 启动器,以使用我的自定义应用程序作为 Windows Shell。

目前,我的设置如下:

Shell 启动器设置Shell Launcher Setup

当以“DefaultUser”身份登录时,将启动默认 shell,而不是“myapp”。

以下是 ELM 为我创建的 PowerShell 脚本:

Clear-Shells
Set-DefaultShell "c:\windows\system32\cmd.exe" 0
Add-Shell "DefaultUser" "c:\myapp.exe"
Set-CustomActions "DefaultUser" @(0,1,2,3) @(0,1,2,3)

关于如何让 Shell Launcher 启动我的 Shell 有什么想法吗?

谢谢

答案1

ELM(以及由 ELM 生成的 PowerShell 脚本)省略了一个重要步骤,即将 shell 从 Explorer.exe 更改为 eShell.exe。如果您将以下内容添加到脚本中,它将正常工作:

Set-ItemProperty -Path "HKLM:\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" -Name Shell -Value "eShell.exe"

eShell.exe 负责为特定用户启动适当的 shell,包括 Explorer(如果已配置)。

相关内容