Which cmdlet do you run to generate the layout.xml file to capture the start page and tiles?

Our first blog post and no better place to start than the Start Screen! Since the Start screen replaced the Start Menu in Windows 8.0 IT Admins have struggled with the lack of management and customization options. In Windows 8.1 enterprises are no longer forced to surrender complete control of the Start Screen over to the user and this post will take a closer look at the options available to customize and control the Start Screen in Windows 8.1 .

Let’s kick off with a quick look at how we can configure the look and feel of the Start Screen.

  • Boot to Desktop
    Like Windows 8.0, Windows 8.1 will by default boot into the Start Screen. However in Windows 8.1 we now have the option to configure the client to boot into the desktop. The Boot to Desktop option would be particularly useful when deploying Windows 8.1 onto non-touch devices . To configure Boot to Desktop you will need to enable the following GPO:

‘User Configuration / Administrative Templates / Start Menu and Task bar / Go to the desktop instead of start when signing in or when all the apps on a screen are closed’

  • The ‘All Apps’ View
    The ‘All Apps’ view can be accessed by swiping up or clicking the down arrow on the Start screen.  In Windows 8.1 you can now choose to display the ‘All Apps’ view instead of the Start Screen by configuring the following policy:

‘User Configuration / Administrative Templates / Start Menu and Task bar / Show the Apps view automatically when the user goes to start’

You can also configure the ‘All Apps’ view to list the desktop apps first by setting the following GPO:

‘User Configuration / Administrative Templates / Start Menu and Task bar / List desktop Apps first in the app view’

  • Start Screen wallpaper:

    The desktop wallpaper is not be displayed on the Start Screen by default. To force the Start Screen to display the Desktop background you will need to set the following registry key:
    Path: HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Accent
    Reg Value Name: MotionAccentId_v1.00
    Reg Type: REG_DWORD
    Reg Value: 219 (Decimal)

    Note: There is no GPO available to configure this setting so you will need to set the registry key via a script during deployment or via a GPO Preference:

Pinning Apps to the Start Screen in Windows 8.1:

Applications which are installed during deployment will not be pinned to the Start Screen but will appear on the ‘All Apps’ view. The same behaviour is true for applications installed post-deployment, either by ConfigMgr or manually by the user.  This is a significant change in Start Screen behaviour from Windows 8.0. Under Windows 8.0, apps would be automatically pinned to the right hand side of the Start Screen which would quickly result in the Start Screen becoming cluttered. Under Windows 8.1 apps are no longer automatically pinned to the Start Menu and it is therefore up to the user to manually pin the apps to the Start Screen.

This change in behaviour may also introduce challenges for enterprises who need to ensure certain applications are automatically pinned to the user’s Start Screen. For such scenarios a new GPO setting to pin specified applications to the Start Screen has been introduced.  The “Pin Apps to Start when Installed” policy allows the user to have a level of freedom in customizing their own Start Screen whilst ensuring that key business applications are pinned to the Start Screen.

The policy requires the individual AppID’s to be specified in the policy and is located in the following location (User or Computer configuration)

Administrative Templates / Start Menu and Task bar / Pin Apps to Start when Installed

Which cmdlet do you run to generate the layout.xml file to capture the start page and tiles?

Caveats to this policy:

  • You can enforce an application to be pinned to the Start Screen but you cannot specify the location or size of the tile on the Start Screen.
  • You must specify applications which are not already installed on the client PC. As soon as the app is installed the policy will ensure the application is pinned to the Start Screen.
  • You cannot retrospectively pin an application to the Start Screen if the application has been installed prior to the policy being applied. The policy must be applied before the application is installed.
  • The policy does not permanently pin the applications to the Start Screen.  The user can still unpin the specified applications from the Start Screen if they wish to.
  • The policy requires an AppID per shortcut and this can be obtained from the XML generated by running the following PowerShell command on the reference computer: Export-StartLayout –As XML –Path .\MyLayout.xml

    The contents of XML will look similar to the image below.  Note the different naming conventions for Modern Apps, Desktop apps, App-V Apps and system utilities:

    Which cmdlet do you run to generate the layout.xml file to capture the start page and tiles?
    You can also run the Get-StartApps CmdLet to list all the applications (with their AppID’s) currently pinned on the logged on user’s Start Screen.

Locking down the Start Screen via GPO:

If you need to lock-down the Start Screen and prevent the user from making any changes there is a new Group Policy which enables IT Admins to deploy and enforce a custom Start Screen layout.  This GPO setting is primarily targeted at heavily controlled environments (e.g. kiosk screens) and allows the IT admin to configure a ‘master’ Start Screen layout and then enforce it via GPO.  Once deployed, the user cannot make changes to the Start Screen. Updates to the Start Screen can be pushed out to clients by releasing an updated XML file.  To implement this policy the following steps are required:

  1. On a reference machine manually customize the Start Screen Layout to your requirements.
  2. Once customized, run the Export-StartLayout PowerShell CmdLet on the reference machine to generate an XML file:
    Export-StartLayout –As XML –Path .\MyLayout.xml

    Note: You must run the command in the logged on user context.

  3. Place the XML export either on a file share which can be accessed by the target client machines or deploy the file via ConfigMgr to a local location on the client machines.
  4. Enable the following GPO (available in both user and computer policy):

    Administrative Templates / Start Menu and Task bar / Start Screen Layout

  5. Specify the UNC path or the local path to the XML file in the policy:

Which cmdlet do you run to generate the layout.xml file to capture the start page and tiles?

To update the Start Screen layout, repeat steps 1 to 3 to generate and deploy a new XML file. No further GPO changes are required to update the layout, the policy will enforce the new XML.

Caveats to this policy:

  • This policy enforces a complete lock down of the Start Screen and actually disables right-click options on pinned apps.  This may cause issues for users wanting to access properties of certain tiles or using ‘Run-as’.  The workaround for the user in this instance would be to use search to find the app and then right click on the app in the search results.

Deploying a Customized Start Screen during the deployment process:

For IT Admins wanting to deploy a customized Start Screen layout as part of the deployment process there are a number of options available with Windows 8.1. Microsoft have documented two options for Start Screen Customization in Image Deployment scenarios:

CopyProfile

The CopyProfile method documented here by Microsoft relies on sysprep being used to generate the AppFolderLayour.bin file and then injecting the bin file into the reference image. I’m not a huge fan of this method as I try to avoid manual steps such as offline servicing the reference image… I would prefer to to apply my custom Start Screen layout on the Deployment Task Sequence.

Unattend.xml

Customizations can also be applied to the Start Screen using the StartTiles setting in the Unattend.xml. The process is documented here but I really don’t like the idea of having to specify each individual application rather than having a single capture of a customized Start Screen. There are also other limitations such as not being able to specify group names so unless you have a specific need to pin an individual application I wouldn’t recommend this method.

Alternative method of applying a custom layout in the Deployment Task Sequence

My recommendation for Start Screen Customization is to use PowerShell to capture a customized Start Screen Layout and then copy the layout to the default user profile during the Deployment Task Sequence.  The steps are detailed below:

  1. On a reference machine manually customize the Start Screen layout to your requirements:
    Which cmdlet do you run to generate the layout.xml file to capture the start page and tiles?
  2. Once customized, run the following PowerShell CmdLet on the reference machine to generate a bin file: Export-StartLayout –As BIN –Path .\AppsFolderLayout.Bin

    Note: You must run the command in the logged on user context and generate a BIN file.  You cannot use the XML format in an image deployment scenario.

  3. Create a package in ConfigMgr or an Application in MDT containing the exported AppsFolderLayout.Bin file.
  4. Add an additional step in the Deployment Task Sequence to copy the AppsFolderLayout.Bin file to the default user profile (%SystemDrive%\Users\Default\AppData\Local\Microsoft\Windows):
    Which cmdlet do you run to generate the layout.xml file to capture the start page and tiles?
  5. Deploy it…
    Which cmdlet do you run to generate the layout.xml file to capture the start page and tiles?
    An alternative approach to copying the layout file into the default user profile is to run the Import-StartLayout PowerShell CmdLet on the Task Sequence instead (for further details on this method reference Aaron Parker’s blog)

And that’s the Windows 8.1 Start Screen 🙂

Surjit Khera.

How do I use StartLayout XML?

Add the LayoutModification. In the Available customizations pane, expand Runtime settings, select Start > Select the StartLayout setting. In the middle pane, click Browse to open File Explorer. In the File Explorer window, navigate to the location where you saved your LayoutModification. xml file.

Where is the Start Menu layout stored?

These are shortcuts to %ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs, %APPDATA%\Microsoft\Windows\Start Menu\Programs, and %APPDATA%\Microsoft\Windows\Start Menu\Programs\System Tools.

How do I export the Start menu layout in Windows 10?

Export a Start Menu layout Open the 'System32' folder located in 'Windows' directory. Now click on 'File', then click on 'Open Windows PowerShell as Administrator'. The layout will be exported to an XML file and will be saved at the specified path.

How do I export my taskbar layout?

Right-click the Taskband key and from the context menu select 'Export'. Save the key with the name Taskband and the taskbar layout will be backed up. To restore the taskbar layout, right-click the registry key that you backed up, and select the Merge option.