You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

部分设备Get-WmiObject检测到双版本Google Chrome卸载问题求助

解决Google Chrome旧版本残留导致的WMI检测重复问题

问题分析

部分设备上Get-WmiObject -Class Win32_Product会检测到两个Google Chrome实例,但Get-Package仅显示当前活跃的新版本。这是因为Chrome更新过程中可能残留了旧版本的MSI安装条目(WMI中的Win32_Product记录),而Get-Package依赖的MSI Provider仅识别当前有效的安装记录。原Win32_Product.Uninstall()命令失败,大概率是旧版本的MSI缓存已损坏或对应文件已被清理,导致卸载流程无法正常触发。

解决方案

方案1:直接通过MSI产品码卸载旧版本

如果旧版本的MSI记录仍有效,使用msiexec命令直接卸载,避免依赖Win32_Product的不稳定卸载方法:

# 替换为目标设备上旧Chrome的IdentifyingNumber(可省略大括号)
msiexec /x C5757571-346F-37C5-BD92-28783FBD2E04 /qn
  • /qn参数表示静默卸载,无需用户交互;
  • 执行后可再次运行Get-WmiObject -Class Win32_Product -Name "Google Chrome"验证旧条目是否消失。

方案2:清理WMI中的残留条目

如果旧版本的实际文件已不存在(仅WMI记录残留),直接删除Win32_Product中的对应条目:

# 定位旧Chrome的WMI实例
$oldChromeEntry = Get-WmiObject -Class Win32_Product | Where-Object {
    $_.IdentifyingNumber -eq "{C5757571-346F-37C5-BD92-28783FBD2E04}" -and $_.Version -like "69.*"
}

# 删除残留条目
if ($oldChromeEntry) {
    $oldChromeEntry.Delete()
    Write-Host "旧版本WMI条目已清理"
} else {
    Write-Host "未找到目标条目"
}
  • 此操作仅清理WMI中的记录,不会删除任何文件,适合解决SCCM报告数据混乱的问题;
  • 执行前确认新版本Chrome可正常运行,避免误删有效条目。

方案3:批量处理多台设备(适用于SCCM环境)

若需批量修复多台设备,可编写PowerShell脚本并通过SCCM推送:

# 获取当前活跃的Chrome版本
$currentChrome = Get-Package -Name "Google Chrome" -ErrorAction SilentlyContinue
if ($currentChrome) {
    # 筛选所有版本低于当前版本的Chrome条目
    $oldChromeEntries = Get-WmiObject -Class Win32_Product -Name "Google Chrome" | Where-Object {
        [version]$_.Version -lt [version]$currentChrome.Version
    }

    foreach ($entry in $oldChromeEntries) {
        try {
            # 尝试卸载旧版本
            $uninstallResult = $entry.Uninstall()
            if ($uninstallResult.ReturnValue -ne 0) {
                # 卸载失败则直接删除WMI条目
                $entry.Delete()
                Write-Host "已清理设备$env:COMPUTERNAME上的旧Chrome WMI条目:$($entry.Version)"
            } else {
                Write-Host "已成功卸载设备$env:COMPUTERNAME上的旧Chrome版本:$($entry.Version)"
            }
        } catch {
            Write-Host "处理设备$env:COMPUTERNAME失败:$_"
        }
    }
} else {
    Write-Host "设备$env:COMPUTERNAME上未找到活跃的Chrome安装"
}

注意事项

  • 避免频繁使用Win32_Product,因为每次调用都会触发MSI验证,可能导致系统卡顿或不必要的修复操作;
  • 操作前可通过wbemtest工具备份Win32_Product类的WMI存储,防止意外破坏;
  • 修复完成后,检查SCCM报告是否恢复正常。

内容的提问来源于stack exchange,提问作者cri_pava

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 01:22:33