Windows – How to remove all the tiles in the Windows 10 start menu

live-tilesstart-menuwindows 10

A common problem I have is that I have a new PC that I'll be using for a while. And pretty much every Windows 10 PC I've used (even work PCs) have a ton of junk I don't want in the start menu in the form of a tile. I don't care much about the stuff in the "all apps" menu because it's out of the way, but I want the tiles to be just for stuff I use a lot.

Unfortunately, as far as I can tell, the only way to remove tiles is one by one by right clicking > unpin from start. How can I quickly remove all these tiles?

Also, is there some easy way to copy over the start menu links and layout from another computer? This would be useful as I have a number of programs that I always want in the start menu no matter what PC I'm using.

Best Answer

WARNING: The script runs without confirmation and feedback. It worked for me (see PS2), but I don't know if it would work for everybody.

From this and this, I made the following script, which did the thing for me:

(New-Object -Com Shell.Application).
    NameSpace('shell:::{4234d49b-0245-4df3-b780-3893943456e1}').
    Items() |
  %{ $_.Verbs() } |
  ?{$_.Name -match 'Un.*pin from Start'} |
  %{$_.DoIt()}

It unpins all programs from start menu.


For non-english Windows, you should probably replace 'Un.*pin from Start' by another sentence.

Run

(New-Object -Com Shell.Application).
    NameSpace('shell:::{4234d49b-0245-4df3-b780-3893943456e1}').
    Items() |
  %{ $_.Verbs() }

To check what's yours. In French : '&Désépingler de la page d''accueil'

PS: previous command may print long list which is hard to look through manually. You could see actions for some known application in the start screen by the command (substitute the name to match, for me it was KeePass):

(New-Object -Com Shell.Application).
     NameSpace('shell:::{4234d49b-0245-4df3-b780-3893943456e1}').
     Items() | ?{$_.Name() -match 'Keep.*'} |
     %{ $_.Verbs() }

PS2: @MarcoLackovic reported that it does not remove all. Recently I had a chance to try it and it indeed did not remove all. What was left were references to Windows Store. Looks like the script only scans through installed applications, so it does not remove other icons. I would suspect it also skips pinned documents, for example.

Related Question