无SSCM客户端时,如何替换GPO WMI筛选器中的Win32_Product类?
解决方案:通过注册表项创建WMI筛选器定位Office 2016 Standard
核心思路:绕过风险较高的
Win32_Product类,直接通过WMI读取系统卸载注册表项(这是系统“添加/删除程序”列表的数据源),完全避免触发Windows Installer的意外重新配置。针对32位Office或64位系统上的32位Office,使用以下WMI查询:
SELECT * FROM StdRegProv WHERE ( hive=2147483650 AND keyPath='SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{90160000-0011-0000-0000-0000000FF1CE}' AND ValueName='DisplayName' AND sValue='Microsoft Office Standard 2016' )注:
{90160000-0011-0000-0000-0000000FF1CE}是Office Standard 2016的固定产品GUID,可通过手动查看对应注册表路径确认。针对64位系统上的64位Office,使用以下WMI查询:
SELECT * FROM StdRegProv WHERE ( hive=2147483650 AND keyPath='SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{90160000-0011-0000-0000-0000000FF1CE}' AND ValueName='DisplayName' AND sValue='Microsoft Office Standard 2016' )组合查询(兼容所有安装架构):如果需要同时覆盖32位和64位Office的安装场景,可通过
OR合并两个查询:SELECT * FROM StdRegProv WHERE ( (hive=2147483650 AND keyPath='SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{90160000-0011-0000-0000-0000000FF1CE}' AND ValueName='DisplayName' AND sValue='Microsoft Office Standard 2016') OR (hive=2147483650 AND keyPath='SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{90160000-0011-0000-0000-0000000FF1CE}' AND ValueName='DisplayName' AND sValue='Microsoft Office Standard 2016') )关键注意事项:
- StdRegProv的命名空间必须指定为
root\default,之前查询无结果大概率是选错了命名空间,创建WMI筛选器时务必确认这一点。 - 若使用批量许可或其他分支版本的Office 2016,产品GUID可能不同,需手动验证注册表中的对应路径。
- 该查询仅读取注册表值,不会触发任何系统安装程序操作,完全规避
Win32_Product类的风险。
- StdRegProv的命名空间必须指定为
内容的提问来源于stack exchange,提问作者Albert
相关产品推荐
相关产品推荐

