询问 Windows (.NET)

询问 Windows (.NET)

我正在尝试修复 Windows 10 安装后损坏的开始菜单。

目前,我已从已知的开始菜单文件位置删除了所有文件,但在开始菜单中仍然有一些条目。

以下是文件夹为空的证据:

在此处输入图片描述

下面是我在主菜单中仍然有一些条目的证据:

在此处输入图片描述

Windows 10 中“开始菜单”文件夹的所有位置是什么?

答案1

你可以在这里找到它 :

%ProgramData%\Microsoft\Windows\Start Menu\Programs
%AppData%\Microsoft\Windows\Start Menu\Programs

在标准安装中,指的是

C:\ProgramData\Microsoft\Windows\Start Menu\Programs
C:\Users\<User>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs

对我来说,这包括开始屏幕中的所有文件夹和文件。

但是也许您安装了程序,然后又卸载了它们 - 但文件夹仍然在那里,因此有多余的文件夹或文件。

就我而言,该文件夹中的所有内容都存在于“开始”菜单中。

答案2

由于您熟悉 PowerShell,因此有几种可能的解决方案......

是的,我使用的是Win10:

PS > [Environment]::OSVersion.Version

Major  Minor  Build  Revision
-----  -----  -----  --------
10     0      10586  0

询问 Windows (.NET)

询问 Windows(具体来说是 .NET)位置在哪里。这将解析正确的位置,以防你像我一样将文件夹移动AppData\RoamingDropBox-喜欢地点。

PS > [Environment]::GetFolderPath('StartMenu')
C:\Users\VertigoRay\DropBox\AppData\Roaming\Microsoft\Windows\Start Menu
PS > [Environment]::GetFolderPath('CommonStartMenu')
C:\ProgramData\Microsoft\Windows\Start Menu

有关 GetFolderPath 的更多信息。

删除损坏的 AppLocker 文件

PowerShell(以管理员身份):

PS > Get-ChildItem "${env:SystemRoot}\System32\AppLocker\Plugin*.*" | %{ Move-Item $_ "${_}.bak" }

运行命令后重新启动 Windows。

DISM 恢复健康

PowerShell(以管理员身份):

& dism /online /cleanup-image /restorehealth

运行命令后重新启动 Windows。

重新注册应用程序包

PowerShell(以管理员身份):

PS > Get-AppXPackage -AllUsers | %{ Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml" }

您可能会收到一些错误(红色文本)。通常这表示无法.xml找到;只需忽略它即可。

重新索引

正如之前在这个主题中链接的那样,只需重新索引驱动器即可刷新“开始菜单”数据库。我会关闭索引,然后再将其全部打开。

关闭索引会删除以前版本的 Windows 中的索引文件;我还没有在 Windows 10 中测试过这一点。如果需要,您可以在关闭索引后手动删除索引文件;关闭索引后可能需要重新启动以释放所有打开的句柄。索引文件的默认位置是:C:\ProgramData\Microsoft\Search

答案3

尽管不太明显,但实际上非常简单。

使用 Windows-R 打开run menu并输入:

shell:programs。这相当于打开了C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs

shell:common programs。这相当于打开了C:\ProgramData\Microsoft\Windows\Start Menu\Programs

我个人shell:startup经常使用打开快捷方式所在文件夹来实现开机自动启动。

您可以在赢帮助在线地点。

答案4

确实,专有二进制 Win10 StartMenu 数据库(有人认为很愚蠢)位于:

  • 正统:%HOMEPATH%\ AppData \ Local \ TileDataLayer \数据库\

但这并不是故事的全部(AFAICT)。

Windows 10 开始菜单有右侧(正统)(组和磁贴)和左侧(按字母顺序排列的单词)...其中左侧至少包含两个组件(用户和全局)。

因此,如果考虑 Windows 10 开始菜单的字​​母部分和常规部分,那么就会有三个位置。

左侧(按字母顺序排列的应用程序名称):

  • 全球的:%ProgramData%\Microsoft\Windows\开始菜单\程序\
  • 用户:%AppData%\Microsoft\Windows\开始菜单\程序\

Win10 开始菜单的正统(右侧磁贴)是位于以下位置的二进制配置单元:

  • 正统:%HOMEPATH%\ AppData \ Local \ TileDataLayer \数据库\ vedatamodel.edb

请注意,这个正统的平铺菜单配置单元具有固定的 1024KB 大小(这可能解释了所谓的 500 个条目的限制)和固定的日期(这可能表明 Win10 内部正在发生的所谓秘密的事情,我自己无法解释,但也许其他人可以解释)。

作为概念证明,(作为管理员或其他用户)您可以复制整个二进制正统“数据库”配置单元,然后更改您的 Windows 10 正统菜单,然后复制回您的存档的正统配置单元,您就会得到旧的菜单。

相关内容