Capturing the Start Menu in Windows 8, 8.1, Server 2012 and Server 2012 R2

Version 7

    Verified Product Versions

    Environment Manager 10.0Environment Manager 8.6Environment Manager 10.1

    Introduction

    When trying to persist the Start Menu in the below versions of Windows you will note that Environment Manager Personalization is not able to successfully persist pinned icons, icon locations and the layout:

     

    • Windows 8
    • Windows 8.1
    • Windows Server 2012
    • Windows Server 2012 R2

     

    This is a known limitation in Environment Manager and will not be fixed in future versions of the product. Please continue reading the detail section below for the workaround.

     

    Detail

    The cause of the failure to persist the data is that in the above versions of Windows, a Microsoft process overwrites the appsFolder.itemdata-ms file that is copied in through Personalization (or Policy, both have been tested).

     

    In order to workaround this problem you can use a combination of Environment Manager Policy and Personalization. Policy should be used to set the appropriate files to read only during the normal logon process (Pre-Desktop trigger) to stop them being overwritten and then remove the read only attribute once logon completes. In our example we remove the read only attribute at the process start of a dummy executable that we place in the "Run" registry key - more information soon on this. Personalization is then used to persist the .lnk files and Start Menu data files during logon and logoff.

     

    You will find four XML snippets attached to this document that are required for this to work. These four snippets that can imported into Policy/Personalization. They were created in an Environment Manager 8.6 console but will also import (and upgrade) in a 10.x Environment Manager console.

     

     

    Workaround

     

    Personalization

     

    1. Open the Environment Manager console
    2. Click on "User Personalization" in the bottom left hand corner
    3. Connect to your Personalization Server
    4. In the top ribbon select the "Tools" tab and click "Import"
    5. Browse to the W8_2012_StartMenu_CustomWS.xml file that is attached to this document
    6. The Configuration Import window will appear
    7. Select all items, if they are not already selected and click OK
    8. If you are prompted to replace or overwrite settings please do so
    9. Now click on your chosen Personalization Group in the left hand pane
    10. Click on the Windows Personalization tab
    11. Make sure the "Taskbar and Start Menu (W7, W8.x, WS2K8 R2, WS2012)" is assigned to the group. If not please add it.
    12. Also confirm that this Windows Settings Group contains a custom setting called "Start Menu - Windows 8.x"

     

    NOTE: The custom setting that we have just added called "Start Menu - Windows 8.x" captures the following data:

     

    {CSIDL_PROGRAMS}

    {CSIDL_LOCAL_APPDATA}\Microsoft\Windows\appsFolder.itemdata-ms

     

    Policy

     

    1. Open the Environment Manager console and open your chosen configuration
    2. Right-click the Computer > Startup trigger and select "AppSense Policy Templates" or "Policy Templates" depending on your version
    3. Click on "Import Template"
    4. Select the W8_2012_StartMenu_Startup.xml file and click OK
    5. Right-click the User > Logon > Pre-Desktop trigger and select "AppSense Policy Templates" or "Policy Templates" depending on your version
    6. Click on "Import Template"
    7. Select the W8_2012_StartMenu_Logon.xml file and click OK
    8. Right-click the User > Process Start trigger and select "AppSense Policy Templates" or "Policy Templates" depending on your version
    9. Click on "Import Template"
    10. Select the W8_2012_StartMenu_ProcessStart.xml file and click OK

     

     

    Summary

     

    The workflow with the full configuration in place is as follows:

     

    • Computer starts up and a dummy executable is created for use later
    • User initiates logon
    • Personalization will sync down the previously captured contents of the "Taskbar and Start Menu (W7, W8.x, WS2K8 R2, WS2012)" Windows Settings Group
    • Policy will make the Start Menu files read only to stop the Operating System overwriting them
    • Policy adds the dummy executable to the "Run" key
    • Users shell program starts, typically explorer.exe
    • Dummy executable is triggered by the "Run" key
    • Process Start action for the dummy executable remove the read only attributes from the Start Menu files
    • Finally a refresh is performed on the .lnk files (pinned items)

     

    On logoff the order is:

     

    • User initiates logoff
    • Personalization syncs the data up to be captured in the "Taskbar and Start Menu (W7, W8.x, WS2K8 R2, WS2012)" Windows Settings Group

     

    This closes the loop and should allow your users to persist their Start Menu on Windows 8, 8.1, 2012 and 2012 R2.

     

    We strongly recommend that this configuration is tested in full with a test user and client before being rolled out to production users