VMware Horizon Community
Imitkov17
Contributor
Contributor
Jump to solution

Windows 10 and UEM taskbar and start layout

Hi,

Has anyone figured out how to export the start layout and the taskbar layout properly?

My environment:

vSphere 6.5 with Horizon 7.2, App Volumes 2.12 and UEM 9.2.

Windows 10 1703

Non-persistent pools

I fillowed the steps here: Managing Windows 10 with VMware User Environment Manager

I need to customize the initial layout but allow the users to pin their own applications. My biggest problem is preventing this pesky Edge icon from coming back after the initial login.

So far I've been able to apply the initial layout using a custom LayoutModification.XML which looks like this:

<LayoutModificationTemplate xmlns:defaultlayout="http://schemas.microsoft.com/Start/2014/FullDefaultLayout" xmlns:start="http://schemas.microsoft.com/Start/2014/StartLayout" Version="1" xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification" xmlns:taskbar="http://schemas.microsoft.com/Start/2014/TaskbarLayout">

  <LayoutOptions StartTileGroupCellWidth="6" />

  <DefaultLayoutOverride>

    <StartLayoutCollection>

      <defaultlayout:StartLayout GroupCellWidth="6">

        <start:Group Name="">

          <start:DesktopApplicationTile Size="2x2" Column="0" Row="0" DesktopApplicationLinkPath="%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Excel 2016.lnk" />

          <start:DesktopApplicationTile Size="2x2" Column="2" Row="0" DesktopApplicationLinkPath="%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Outlook 2016.lnk" />

        </start:Group>

      </defaultlayout:StartLayout>

    </StartLayoutCollection>

  </DefaultLayoutOverride>

    <CustomTaskbarLayoutCollection PinListPlacement="Replace">

      <defaultlayout:TaskbarLayout>

        <taskbar:TaskbarPinList>

          <taskbar:DesktopApp DesktopApplicationLinkPath="%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Excel 2016.lnk" />

          <taskbar:DesktopApp DesktopApplicationLinkPath="%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Outlook 2016.lnk" />

        </taskbar:TaskbarPinList>

      </defaultlayout:TaskbarLayout>

    </CustomTaskbarLayoutCollection>

</LayoutModificationTemplate>

Adding PinListPlacement="Replace" after CustomTaskbarLayoutCollection removes the default pinned applications. The problem is that Microsoft decided to use the same XML file for both the start layout and the taskbar layout but the Export-StartLayout commandlet only exports the start layout and overwrites the existing XML which removes the PinListPlacement="Replace". This causes the Edge pin to reappear on the second login.

Does anyone know how to get rid of this Edge reappearing problem? Where is the Edge icon coming from anyway? The registry key HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Taskband is imported by UEM but then some windows process overwrites it. It keeps the existing pins and adds the Edge pin to the list.

1 Solution

Accepted Solutions
ijdemes
Expert
Expert
Jump to solution

Did you see this thread?

FIXED! Roam the Windows 10 Start Menu in your VDI environment.

Maybe you can test of this solves your issue.


\\ Ivan
---
Twitter: @ivandemes
Blog: https://www.ivandemes.com

View solution in original post

Reply
0 Kudos
6 Replies
ijdemes
Expert
Expert
Jump to solution

Did you see this thread?

FIXED! Roam the Windows 10 Start Menu in your VDI environment.

Maybe you can test of this solves your issue.


\\ Ivan
---
Twitter: @ivandemes
Blog: https://www.ivandemes.com
Reply
0 Kudos
Imitkov17
Contributor
Contributor
Jump to solution

Thank you ijdemes​,

Preliminary tests are promising. I did combine the two solutions in order to get rid of the Edge and still be able to carry over both the start and taskbar layouts. Below are the instructions. Hope this will save someone numerous hours of research. My Windows 10 Start Menu INI looks like this now:

[IncludeFiles]

<LocalAppData>\Microsoft\Windows\Shell\LayoutModification.XML

[IncludeRegistryTrees]

HKCU\Software\Microsoft\Windows\CurrentVersion\CloudStore

The logoff task from the blog above has to be disabled so the XML file is not overwritten. The XML file doesn't change which means that PinListPlacement="Replace" present every time the user logs on which prevents the Edge pin from coming back. I have a predefined setting that drops the customized XML for the initial layouts. This should do the trick for now.

I don't know what Microsoft is thinking but this is ridiculous not allowing enterprise users an easy way of controlling things like this. And forcing users to use Edge with no easy way to customize the default profile and get rid of all the crapware.

Thanks again for your help!

Reply
0 Kudos
ijdemes
Expert
Expert
Jump to solution

Hi Imitkov17​,

I know it's really frustrating some times.

Be aware that you also may need the following:

[IncludeIndividualRegistryValues]

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\SlowContextMenuEntries

[IncludeFolderTrees]

<LocalAppData>\microsoft\windows\caches

This is also described in the same thread and as far as I know fixes some issues with the grouping of tiles.

But good to hear you now have a good workaround and thanks for the feedback!


\\ Ivan
---
Twitter: @ivandemes
Blog: https://www.ivandemes.com
Reply
0 Kudos
Imitkov17
Contributor
Contributor
Jump to solution

Hi ijdemes​,

Grouping seems to be working without those two entries but I added them just in case. I don't see any difference but as I said I will need to do some more extensive testing before rolling this out in production.

The whole Windows 10 in VDI is so frustrating. I've been trying to find a workable compromise for months. Because we are using non-persistent desktops  I've had issues with logon times, start menu, task bar, default applications etc. I was (still am) very close to scratch the whole thing and go back to Windows 7 which is working flawlessly. After the release of 1607 and now 1703 things have gotten better but still far from what it should be. And the worst part is that each new release changes how things work and breaks existing profiles.

Now I have to find a reliable way to configure the default applications but still allow the users to make changes or at least apply different default applications on a per-group basis.

Thanks again for your help!

Ivo

DEMdev
VMware Employee
VMware Employee
Jump to solution

Hi Ivo,

I feel your pain...

Now I have to find a reliable way to configure the default applications but still allow the users to make changes or at least apply different default applications on a per-group basis.

With "apply different default applications", you mean putting default tiles into the start menu and pinning default items to the task bar? That could be achieved by having different predefined settings per group, right?

As for allowing the users to make changes: you might need to perform that Export-StartLayout at logoff anyway (so as to capture your users' modifications), and post-process the resulting XML to insert your PinListPlacement="Replace" again.

Reply
0 Kudos
Imitkov17
Contributor
Contributor
Jump to solution

Hi UEMdev​,

By "apply different default application" I mean default apps (mail, browser, etc) and file type associations (FTA). As of now I have a semi-working solution. Edge always takes over the default browser and even though the PDF association seems to stick, double-clicking a PDF file will open Adobe Reader but it will state that it's not the default app.

I will open a new thread for that so we can keep things separately.

As far as the start menu and taskbar layout goes - it looks like that Windows 10 combines what's in the LayoutModification.XML and what's in the registry key HKCU\Software\Microsoft\Windows\CurrentVersion\CloudStore. So I use the XML as predefined setting to set the initial start menu and taskbar layouts and don't change it with a logoff task. This preserves PinListPlacement="Replace" so the Edge icon doesn't show up again on the taskbar. All start menu modifications after that are saved in the above key. The task bar modifications are saved in the default taskbar config in UEM. This seems to work well although more testing is required.

This is my current Start Menu INI

[IncludeFiles]

<LocalAppData>\Microsoft\Windows\Shell\LayoutModification.XML

[IncludeRegistryTrees]

HKCU\Software\Microsoft\Windows\CurrentVersion\CloudStore

#Worked without these two but added them from the thread that ijdemes​ shared above.

[IncludeIndividualRegistryValues]

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\SlowContextMenuEntries

[IncludeFolderTrees]

<LocalAppData>\microsoft\windows\caches