如何检查是否在 C# 中安装了 Microsoft Edge Chromium

How to check if Microsoft Edge Chromium is installed in C#

在 C# 中检测 Microsoft Edge Chromium 已安装并且不同时检测到 Edge 仍在系统中而 Chromium 应覆盖 [=16] 的最佳方法(最好使用 Windows 注册表)是什么=]边缘?

对于 通常我们使用注册表中的本地 Settings\Software\Microsoft\Windows\CurrentVersion\AppModel\PackageRepository\Packages\Microsoft.MicrosoftEdge_ 包。

1) 查找C:\Windows\SystemApps\Microsoft.MicrosoftEdge_.....\AppxManifest.xml

2) 解析AppxManifest.xml,查找版本,示例

Version="44.18362.449.0"

3) 检查(伪代码)

If (Version > 79) {Blink}
Else {EdgeHtml}

Release history

我建议您检查以下位置的浏览器条目。

HKEY_CURRENT_USER\SOFTWARE\Clients\StartMenuInternet

or

HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet

子项 HKEY_CURRENT_USER\SOFTWARE\Clients\StartMenuInternet 描述当用户单击“开始”菜单上的 Internet 图标时启动的 Internet 浏览器。如果该子项为空或丢失,则“开始”菜单上的 Internet 图标将设置为存储在第二个位置 HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet 的系统默认值,它描述了所有 Internet 浏览器应用程序已安装在系统上。

如果安装了 MS Edge Chromium,它将出现在列表中。

参考文献:

  1. How to find all the browsers installed on a machine

  2. How to Register an Internet Browser or Email Client With the Windows Start Menu