Não sei se isso se qualifica como resposta ou não, mas userinit.exe verifica o Shell do usuário atual antes de passar para o valor Shell em HKLM. Assim, cada usuário pode ter seu próprio Shell. Assim, você pode criar um novo usuário e ir para essa chave de registro (verifique se você está logado como esse usuário):
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
(Observe que a chave está em HKCU e não HKLM )
Provavelmente você não encontrará uma entrada de registro chamada Shell , então clique com o botão direito em Winlogon , vá para New e clique em String Value . Nomeie essa nova entrada Shell e insira o valor como cmd.exe (apenas um exemplo, substitua-o pelo aplicativo que você deseja iniciar).
Isso iniciará o programa especificado em vez de explorer.exe sempre que você fizer login como esse usuário. Portanto, sem ter uma entrada de inicialização extra, você pode ter o Windows Explorer e o Steam como seu Shell em dois usuários diferentes.