Search code examples
powershellwindows-10-desktop

Use powershell to configure "Use start fullscreen" setting?


Windows 10 allows you to configure Settings > Start > Use Start full screen, I'm trying to find a way to configure this through powershell/dsc scripting/automation. I was able to find the MDM and GPO documentation (https://learn.microsoft.com/en-us/windows/configuration/windows-10-start-layout-options-and-policies) but this does not appear to apply to desktop Windows 10 Pro - powershell has no commands/cmdlets with GP* nouns.


Solution

  • The scripts below, inspired by the .bat-files in this article adjust the local policies and should probably work. I have tested on 10.0.16299.431 (Enterprise). Based on the article (Created by Shawn Brink, January 24th 2015):

    To force fullscreen:

    $forceStartSizePath = "\Software\Policies\Microsoft\Windows\Explorer"
    
    New-ItemProperty -Path "HKCU:$forceStartSizePath" -Name "ForceStartSize" -Value 2 -Force
    New-ItemProperty -Path "HKLM:$forceStartSizePath" -Name "ForceStartSize" -Value 2 -Force
    
    Stop-Process -name explorer
    

    To force normal mode:

    $forceStartSizePath = "\Software\Policies\Microsoft\Windows\Explorer"
    
    New-ItemProperty -Path "HKCU:$forceStartSizePath" -Name "ForceStartSize" -Value 1 -Force
    New-ItemProperty -Path "HKLM:$forceStartSizePath" -Name "ForceStartSize" -Value 1 -Force
    
    Stop-Process -name explorer
    

    To reset to default:

    $forceStartSizePath = "\Software\Policies\Microsoft\Windows\Explorer"
    
    Remove-ItemProperty -Path "HKCU:$forceStartSizePath" -Name "ForceStartSize"
    Remove-ItemProperty -Path "HKLM:$forceStartSizePath" -Name "ForceStartSize"
    
    Stop-Process -name explorer
    

    Note: The last line (making explorer restart) may not desirable, but it will make sure the settings are picked up instantly. Your screen will flicker (if running local) as explorer is restarted.

    Also; if parts of the registry-path is missing, you will get an error message. Use Test-Pathand New-Item to check for and create the missing part of the path.