我遇到的一个常见问题是,我有一台新的PC将要使用一段时间。几乎我使用过的每台Windows 10 PC(甚至是工作PC)都会在开始菜单中以平铺形式出现大量垃圾。我不太在意“所有应用”菜单中的内容,因为它不碍事,但是我希望这些图块仅适合我经常使用的内容。
不幸的是,据我所知,唯一删除瓷砖的方法是右键单击>从开始取消固定。如何快速删除所有这些图块?
另外,是否有一些简单的方法可以从另一台计算机复制开始菜单链接和布局?这将很有用,因为无论使用哪种PC,我都希望在开始菜单中有许多程序。
我遇到的一个常见问题是,我有一台新的PC将要使用一段时间。几乎我使用过的每台Windows 10 PC(甚至是工作PC)都会在开始菜单中以平铺形式出现大量垃圾。我不太在意“所有应用”菜单中的内容,因为它不碍事,但是我希望这些图块仅适合我经常使用的内容。
不幸的是,据我所知,唯一删除瓷砖的方法是右键单击>从开始取消固定。如何快速删除所有这些图块?
另外,是否有一些简单的方法可以从另一台计算机复制开始菜单链接和布局?这将很有用,因为无论使用哪种PC,我都希望在开始菜单中有许多程序。
Answers:
警告:脚本运行时没有确认和反馈。它对我有用(请参阅PS2),但我不知道它是否对每个人都有用。
(New-Object -Com Shell.Application).
NameSpace('shell:::{4234d49b-0245-4df3-b780-3893943456e1}').
Items() |
%{ $_.Verbs() } |
?{$_.Name -match 'Un.*pin from Start'} |
%{$_.DoIt()}
它从开始菜单中取消固定所有程序。
对于非英语的Windows,您可能应该用另一句话替换“ Un。* pin from Start”。
跑
(New-Object -Com Shell.Application).
NameSpace('shell:::{4234d49b-0245-4df3-b780-3893943456e1}').
Items() |
%{ $_.Verbs() }
要检查你的。法语:“&Désépinglerde la page d''accueil”
PS:以前的命令可能会打印出很长的列表,很难手动查看。您可以在开始屏幕上通过以下命令查看某些已知应用程序的操作(用名称代替要匹配的名称,对我来说是KeePass):
(New-Object -Com Shell.Application).
NameSpace('shell:::{4234d49b-0245-4df3-b780-3893943456e1}').
Items() | ?{$_.Name() -match 'Keep.*'} |
%{ $_.Verbs() }
PS2:@MarcoLackovic报告并未删除所有内容。最近,我有一个尝试的机会,它的确没有删除所有内容。剩下的是对Windows Store的引用。看起来该脚本仅扫描已安装的应用程序,因此不会删除其他图标。例如,我怀疑它还会跳过固定的文档。
(New-Object -Com Shell.Application).NameSpace('shell:::{4234d49b-0245-4df3-b780-3893943456e1}').Items() | ? { $null -ne ($_.Verbs() | ? { $_.Name -match 'Un.*pin from Start' }) } | select Name
,我跑去看看即将取消的内容。很棒的发现!
script.ps1
文件中,然后执行powershell -ExecutionPolicy ByPass -File script.ps1
:该脚本运行时没有错误,但没有任何效果,磁贴也未移除。第二个脚本提供了上千行的内容,例如&Pin to Start或Create&shortcut,但是它们都不包含与从Start Unpin远程相似的内容。
Open
,Open file location
,Open new window
,Run as administrator
,Uninstall
,&Pin to Start
,Create &shortcut
为此,我提出了一个冗长而全面的脚本,该脚本应删除所有磁贴,甚至包括尚未安装的应用(Candy Crush,Netflix等)的磁贴。这仅适用于当前登录的用户,并且必须从管理员Powershell窗口中运行。
#Delete layout file if it already exists
If(Test-Path C:\Windows\StartLayout.xml)
{
Remove-Item C:\Windows\StartLayout.xml
}
#Creates the blank layout file
echo "<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"">" >> C:\Windows\StartLayout.xml
echo " <LayoutOptions StartTileGroupCellWidth=""6"" />" >> C:\Windows\StartLayout.xml
echo " <DefaultLayoutOverride>" >> C:\Windows\StartLayout.xml
echo " <StartLayoutCollection>" >> C:\Windows\StartLayout.xml
echo " <defaultlayout:StartLayout GroupCellWidth=""6"" />" >> C:\Windows\StartLayout.xml
echo " </StartLayoutCollection>" >> C:\Windows\StartLayout.xml
echo " </DefaultLayoutOverride>" >> C:\Windows\StartLayout.xml
echo "</LayoutModificationTemplate>" >> C:\Windows\StartLayout.xml
$regAliases = @("HKLM", "HKCU")
#Assign the start layout and force it to apply with "LockedStartLayout" at both the machine and user level
foreach ($regAlias in $regAliases){
$basePath = $regAlias + ":\SOFTWARE\Policies\Microsoft\Windows"
$keyPath = $basePath + "\Explorer"
IF(!(Test-Path -Path $keyPath)) {
New-Item -Path $basePath -Name "Explorer"
}
Set-ItemProperty -Path $keyPath -Name "LockedStartLayout" -Value 1
Set-ItemProperty -Path $keyPath -Name "StartLayoutFile" -Value "C:\Windows\StartLayout.xml"
}
#Restart Explorer, open the start menu (necessary to load the new layout), and give it a few seconds to process
Stop-Process -name explorer
Start-Sleep -s 5
$wshell = New-Object -ComObject wscript.shell; $wshell.SendKeys('^{ESCAPE}')
Start-Sleep -s 5
#Enable the ability to pin items again by disabling "LockedStartLayout"
foreach ($regAlias in $regAliases){
$basePath = $regAlias + ":\SOFTWARE\Policies\Microsoft\Windows"
$keyPath = $basePath + "\Explorer"
Set-ItemProperty -Path $keyPath -Name "LockedStartLayout" -Value 0
}
#Restart Explorer and delete the layout file
Stop-Process -name explorer
Remove-Item C:\Windows\StartLayout.xml
另外,可以以其他几种方式使用此脚本:
适用于所有当前和将来的用户(他们将无法固定开始项)
一种。删除下面的所有内容#Enable the ability to pin items again by disabling "LockedStartLayout"
应用自定义布局
一种。完全根据需要自定义开始布局
b。使用此MS指南将其导出:https : //docs.microsoft.com/zh-cn/windows/configuration/customize-and-export-start-layout
C。用导出的XML替换我提供的空白布局(确保正确转义字符)
那应该照顾到原始问题中提到的所有情况。
InterLinked建议的方法的替代方法是使用PowerShell删除应用程序(这将完全删除应用程序,而不仅仅是隐藏它们)。
Get-AppXPackage | where-object {$_.name –notlike “*store*”} | Remove-AppxPackage
有关更多信息,请参阅本教程。http://www.tenforums.com/tutorials/4689-apps-uninstall-windows-10-a.html
您可以使用“ Open Shell”返回Windows 7开始菜单。该程序将替换Microsoft“ Metro”开始菜单。它是高度可配置的,使您可以获得XP或Win7外观。如果我不使用触摸屏,这是我在Win10上安装的第一个应用程序。
看起来像这样:
如果要更改开始菜单按钮,也可以用所需的任何图标替换小外壳。
打开Shell: https ://github.com/Open-Shell/Open-Shell-Menu
注意: Classic Shell现在称为Open Shell,并且是完全开源的。
您提到您正在使用Windows10。组策略编辑器提供了此功能。您可以使用组策略模板来大规模管理设置。
如果不需要磁贴,请确保模板没有磁贴并进行部署。如果您想在此处/那里放置某些瓷砖,则将它们排列一次,捕获然后部署。
您可以使用此链接来了解有关此方法的更多信息
如果没有gpedit.msc,则可以使用第三方解决方法来安装它,但这仅在使用Home版本时才可以。否则,这应该可以正常进行。
这个脚本很好用
(New-Object -Com Shell.Application).
NameSpace('shell:::{4234d49b-0245-4df3-b780-3893943456e1}').
Items() |
%{ $_.Verbs() } |
?{$_.Name -match 'Un.*pin from Start'} |
%{$_.DoIt()}
在Win 10版本1709和1803上,它将删除除快捷方式以外的所有快捷方式,这些快捷方式是从商店安装应用程序的链接(不是快捷方式)(新闻,速度测试等)。
安装它们后,此脚本将删除它们。
要从新安装的计算机上清除所有预安装的恶意软件,您需要全新安装Windows 10来重新开始。
如果还希望从计算机上卸载所有Windows Store应用程序,则可以在Administrator PowerShell中使用此命令:
Get-AppxPackage -AllUsers | where-object {$_.name –notlike “*store*”} | Remove-AppxPackage
。由于“开始”菜单仅与Windows Store应用程序一起提供,因此将全部删除。
但是,您将需要重新安装所需的每个Windows Store应用程序。
您还可以创建一个PowerShell脚本,将其全部删除。该命令的语法为Pin-App "Mail" -unpin
,只需将Mail替换为不需要的图块,然后将每个图块复制粘贴一次命令即可删除。祝好运!