windows 有许多可以并排安装的 MSXML 版本。即版本 3、4、5 和 6。
我必须找到系统上存在哪个 msxml 文件。我的查询仅限于注册表。
您计算机上安装的所有 MSXML 版本都将位于以下注册表 GUID 中:
HKEY_CLASSES_ROOT\CLSID\{2933BF90-7B36-11D2-B20E-00C04F983E60}\VersionList.
如果您正在寻找特定版本,例如 3.0,您将检查 Name = 3.0。
通过 Powershell 安装所有版本:
New-PSDrive -PSProvider registry -Root HKEY_CLASSES_ROOT -Name HKCR
get-item "HKCR:\CLSID\{2933BF90-7B36-11D2-B20E-00C04F983E60}\VersionList"
第一行让您将 HKEY_Classes_Root 作为 powershell 中的驱动器。第二行为您提供安装的版本。
输出类似于:
Hive: HKEY_CLASSES_ROOT\CLSID\{2933BF90-7B36-11D2-B20E-00C04F983E60}
Name Property
---- --------
VersionList 6.0 : C:\Windows\System32\msxml6.dll
3.0 : C:\Windows\System32\msxml3.dll