So you are in the process of developing a Windows 10 image, nice!
You want de customize your StartMenu, nice!
You have built a reference machine, and exported the StartMenu file.
https://msdn.microsoft.com/en-us/library/windows/hardware/mt171092(v=vs.85).aspx
We know how to do that with PowerShell:
Export-StartLayout – Path C:\Export\MyStartMenu.xml
And in your task sequence you import the file again with PowerShell:
Import-StartLayout C:\Import\MyStartMenu.xml –MountPath $env:SystemDrive\
(or you can rename your MyStartMenu.xml file to LayoutModification.xml and do a xcopy to C:\Users\Default\AppData\Local\Microsoft\Windows\Shell\)
xcopy /e /s /y /h /i “%~dp0LayoutModification.xml” “C:\Users\Default\AppData\Local\Microsoft\Windows\Shell\LayoutModification.xml”
Ok you do a deployment, log on with a new user who has no profile on the computer, open up the startmenu and……Nothing, still the default startmenu!
Like this:
But I wanted this:
Well I found a nasty line in the generated XML file while exporting with PowerShell
Export:
And with this it is NOT working.
Just remove the line and things will start to work! Nice!
Hi, i have the same problem, LayoutModification.xml not working.
on windows 10 64 pro
if i force with gepedit.msc the layoutmodification.xml work but the user can’t change the start menu.
A idea ?
Thanks
Hi,
if you force it with a GPO the Start Menu is mandatory, i.e. the user can’t make changes.
This is by design.
/Stephan
Hi, thank’s i know for gpo it’s to test layout, but import or copy failed to apply layoutmodification.
A idea.
Thank’s
Keep in mind that it will only work for NEW users, i.e. users with no profile on the machine.
/Stephan
this same issue is happening for me. I found this blog post (thankfully! I was pulling my hair out because I’ve had it work before I recently updated it) and so I did a new import-startlayout on the same VM I was testing it on that had the regular start menu layout, and then I logged onto a local admin account, went to system -> advanced… -> user profiles -> and deleted the other account’s local profile and then logged out and onto it so it would rebuild a new profile, and the same result exists.
i’m going to try this with reimaging it through the SCCM TS I have and see if it helps though on a fresh image.
The only way ive been able to make this work is after importing the new layout, i had to delete/rename this folder: C:\Users\Default\AppData\Local\TileDataLayer
Hi Jeff ive just done that and the start tile menu disappeared and the start menu list would not work i couldnt click on anything?
Geez ! This drived me mad for a while, tried lot of things without success. Thanks A LOT !
What if you use roaming profiles on your network?
Hey Stephan, Thanks for this post, it really helpded me out!!!
glad I could be of any help
/Stephan
Stephan – Great help! Thank you for sharing.
your welcome 🙂
/Stephan
Thank you!!
Hi,
I am trying to mount layout modification file but it’s not working
i have created test laptop where machine is not in domain.do i need to put in domain for getting the result.
Hi, is their any reason why the custom start menu would only work for an admin user and not a standard user? even after fully rebuilding the pc via MDT it still only works for admin users?
Thanks.
Nope, no reason.
It should work!
the color of start screen changed to brown for me, is this something you are experiencing too?
No I have not seen that before.
Interesting ‘feature’?
You’re the man, Stephan!!
I’ve been searching for days on how to create a WORKING customized start menu for every new user.
Never thought that deleting one simple line would solve the problem.
Thank you so much for this!
“Well I found a nasty line in the generated XML file while exporting with PowerShell”
You mean to say manually delete this line and then apply the powershell script pointing this XML.. ?
Yep, that is what I mean 🙂
/Stephan
Thanks Stephen,
this was driving me nuts …
You’re welcome 🙂
/Stephan
Hello Stephan,
Thanks for you post, i have tested it out cause i couldn’t get it to work before.
But after removing the line from the .XML file it still doesn’t change my startmenu.
What could i be doing wrong?
Even if i put in the command in powershell manually it doesn’t give me an error but it also doesn’t change my start menu
hi!
This only works for new profiles. So make sure there is no existing profile on the machine.
/Stephan
Dear Stephan,
I have tested removing the line from the XML file, but it still doesn’t change my startmenu.
Even when i test it in powershell manually it doesn’t give me an error but it also doesn’t change my start menu.
What could i be doing wrong?
Hi Stephan,
Thanks for your reply.
I have done this with a new profile since i have made a custom task in MDT to deploy the powershell script after the installation of the image. I see that the Layoutmodification.xml is copied to the C:\windows\temp directory but the start menu is not modified.
Any idea / suggestions what could be going wrong cause i would love this one to get to work.
Is there a way to do this for a user who already logged in? Without using group policy.
Hi,
no only possible with new profiles.
/Stephan
When you Watch out for the shortcuts linked to the user profiles folder (Usually linked to the %APPDATA% folder). Those may not work (will be just an empty space) if new user doesn’t have that shortcut in his profile or doesn’t have access to it. I had issues with “Command Prompt.lnk, and “File Explorer.lnk”.
I found that existing users users have their own xml file in the same dir in their profile folder, however it does not appear to contain everything currently displaying in this “grid” view, where are these shortcuts coming from that are not shown?
Hi Andreas,
well as of version 1709 Microsoft has made quite a few changes to the Start Menu configuration.
It used to be a database (TyleDataLayer\Database) but now it is a combination of Registry Settings and Files.
– HKCU\Software\Microsoft\Windows\CurrentVersion\CloudStore
– HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\SlowContextMenuEntries
– HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager
– {CSIDL_PROGRAMS} (maps to %APPDATA%\Microsoft\Windows\Start Menu\Programs), being LocalAppData
So this is where it is all combined nowadays.
/Stephan
Thanks to forums like this one and others, I finally got it to work. I’m new at this, just joined our SCCM team and I’m trying to learn as much as possible. It took several hours of testing and researching. I did this on Windows 10 Ent 1903 on a VM using Audit Mode. I organized the tiles just the way I want them, then I ran the following, to export the layout to my Temp folder
Export-StartLayout -UseDesktopApplicationID C:\Temp\updateMenuLayout.xml
Import
import-StartLayout -LayoutPath C:\Temp\updateMenuLayout.xml -MountPath C:\
The file gets imported to C:\Users\Default\AppData\Local\Microsoft\Windows\Shell
Manually copying the file to that location, did not work for me, only using the command worked
The layout will only apply to new user accounts.
Have you ever seen it that your not able to make any changes to the start menu after doing the import?
Login with local admin account, changed start Menu to my liking.
Ran export-startlayout -path c:\Default-Startmenu.xml
Ran import-startlayout c:\default-startmenu.xml –MountPath $env:SystemDrive\
Logged off
Login with new user, got my start menu, but not able pin new apps or unpin apps.
Hello everyone,
I’m running a clean install of Windows 10 Pro v2004 from the ISO downloaded from MS web site. I have (following various guides on Microsoft sites and using export/import info above) now successfully created a fully working LayoutModification.xml that includes taskbar modifications, and verified the xml file successfully in https://codebeautify.org/xmlvalidator
The contents of this are shown below.
I then copied the LayoutModification.xml to %LocalAppData%\Microsoft\Windows\Shell and SysPrepped my machine (having created a master image) using an Unattend.xml as shown below.
All SysPrepped ok and the PC rebooted without any error messages, and all appears to have worked ok, EXCEPT that the order of the icons on both the taskbar and in the Start Menu were not the same as they were when I ran the Start Menu export and then added in the taskbar section.
So for instance, on my master image, the taskbar icons went (from left to right) “Microsoft Store”, “File Explorer”, “Internet Explorer”, “Edge Chromium”. After the restore, they were in a different order.
On the Start Menu, it had recreated the layout and groups just fine, and had all the required icons. However, in the “Productivity” group there is a folder with Office 2019 web icons. These icons are just blank, although they do load the required web app, but being blank is not acceptable.
Also, there is a “Games” folder. Inside this, I’d resized various icons and created a logical order. With these icons, the structure is the same, but icons I had set to small size are now medium, and some medium ones are now small – but different from the way I had originally configured it.
As my xml had verified ok and I’d observed xml file structure guidelines, etc from various web sources, I am now a little stumped as to why these things have changed. They’re fairly minor cosmetic issues granted, but I’m trying to create a generic default image that I can deploy to four different PCs in my home, for multiple users, so don’t want to have to re-tweak each profile on each PC, hence the use of SysPrep/LayoutModification.xml.
If anyone has any way that I can resolve this, or any way to maybe export registry keys for Start Menu and Taskbar layouts that could somehow be automatically imported during post-SysPrep boot, that would be very much appreciated please.
———————————- start of Unattend.xml ——————————————————–
true
———————————- end of Unattend.xml ——————————————————–
———————————- start of LayoutModification.xml ——————————————
———————————- end of LayoutModification.xml ——————————————
I actually managed to resolve this by copying and pasting my individual customisation lines into a downloaded example. There must have been an errant space in my original somewhere, as I couldn’t spot any syntax errors after numerous scans. All is working as expected now.
Good to hear all is working now!
Thanks for the feedback.
/Stephan
Hello All watch out for an easy folder name typo:
It’s easy to accidentally put your LayoutModification.xml file file incorrectly into this folder
WRONG FOLDER:
C:\Users\Default\AppData\Local\Microsoft\Shell
CORRECT FOLDER:
C:\Users\Default\AppData\Local\Microsoft\Windows\Shell
Just saying I’ve seen this mistake made