How to use a .exe in kiosk mode (only for that user) with Windows Configuration Designer (WCD)

dev 0 Reputation points
2025-11-08T11:43:12.41+00:00

I am using windows11 enterprise. I am using windows configuration designer and I create my .ppkg. when I log into kiosk I have black display(my app is not visible and since I changed the shell it won't show anything. If I log into my normal account I have instead autologin with the app that works. But there instead I would like to have explorer.exe

Developer technologies | C++
Developer technologies | C++
A high-level, general-purpose programming language, created as an extension of the C programming language, that has object-oriented, generic, and functional features in addition to facilities for low-level memory manipulation.
0 comments No comments
{count} votes

2 answers

Sort by: Most helpful
  1. Marcin Policht 67,980 Reputation points MVP Volunteer Moderator
    2025-11-08T12:17:20.27+00:00

    You changed the Shell at system level instead of only for the kiosk user. So now the kiosk account has no visible UI, and your normal account is launching your app instead of Explorer. To fix this, try the following:

    1. Remove the custom Shell override from the provisioning package:
      • Open your .wcd project.
      • Go to Runtime settings → Shell Launcher.
      • Remove the shell replacement, or ensure it is set only for the kiosk account, not default.
      • Rebuild the .ppkg.
    2. Use Assigned Access (Kiosk mode) instead of Shell Launcher:
      • Open Settings → Accounts → Family & other users → Set up a kiosk.
      • Select your kiosk user, assign the app.
      • This runs the app full-screen only for that user.
    3. Restore Explorer for your normal account:
      • Run:
             reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /d explorer.exe /f
        
      • Reboot.

    For more info, refer to https://learn.microsoft.com/en-us/windows/configuration/shell-launcher/


    If the above response helps answer your question, remember to "Accept Answer" so that others in the community facing similar issues can easily find the solution. Your contribution is highly appreciated.

    hth

    Marcin


  2. Jay Pham (WICLOUD CORPORATION) 3,060 Reputation points Microsoft External Staff Moderator
    2025-11-18T10:03:38.6633333+00:00

    Hello @dev ,

    I reviewed your follow‑up notes. Assigned Access only lists supported Store/UWP apps. A custom Win32 .exe must use Shell Launcher with per‑user mapping. The “contact admin” block is typically SmartScreen, AppLocker/WDAC, or file trust restrictions. According to Microsoft document, I have some solutions you can try:


    1. Restore normal desktop

    Run as Administrator:

    
    reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /d explorer.exe /f
    
    

    Reboot → your main account will be back to normal.

    Shell Launcher overview

    1. Unblock the .exe from Windows security
    1. Put the .exe in a trusted folder

    Best location:

    C:\Program Files\YourApp\YourApp.exe

    (never leave it on Desktop or Downloads)

    1. Set up Shell Launcher (per-user – the correct way)

    Open PowerShell as Administrator and run this exact script:

    
    # Change this to your kiosk account name
    
    $KioskUser = "KioskUser"
    
    $sid = (Get-LocalUser -Name $KioskUser).SID.Value
    
    $ShellLauncher = Get-CimInstance -Namespace "root\standardcimv2\embedded" -ClassName WESL_UserSetting
    
    # Normal desktop for everyone else
    
    $ShellLauncher | Invoke-CimMethod -MethodName SetDefaultShell -Arguments @{ Shell = "explorer.exe"; ReturnCode = 0 }
    
    # Your app only for the kiosk user
    
    $ShellLauncher | Invoke-CimMethod -MethodName SetCustomShell -Arguments @{ 
    
        Sid   = $sid
    
        Shell = "C:\Program Files\YourApp\YourApp.exe"
    
    }
    
    Write-Host "All done – reboot now!" -ForegroundColor Green
    
    

    Full official guide (this exact script is there):

    Configure Shell Launcher using PowerShell

    1. Reboot and log in as the kiosk user

    Your .exe will launch automatically in full-screen kiosk mode.

    All other accounts stay completely normal.

    I hope this helps resolve the issue! Let me know if you need further assistance.


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.