【问题标题】:Get-WmiObject -Class Win32_Product - showing wrong version of programGet-WmiObject -Class Win32_Product - 显示错误的程序版本
【发布时间】:2018-02-08 18:14:11
【问题描述】:
Get-WmiObject -Class Win32_Product  | where-object { $_.name -like "*OfficeScan*" }  

显示趋势科技防毒墙网络版客户端的错误版本号 - 当安装的版本为 12.0.4430 时,默认版本 12.0.1222

我也试过了:

Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* |  Select-Object DisplayName, DisplayVersion, Publisher, InstallDate 

那里根本不显示。这很奇怪,因为在旧系统控制中,如果我去卸载它会显示正确的版本:

所以我需要以某种方式将实际版本的信息提取到我的 powershell 中。我需要它来实现自动更新功能,它必须使用 powershell。

【问题讨论】:

    标签: powershell


    【解决方案1】:

    假设您使用的是 64 位系统,您正在查看 wrong place in the registry

    我没有 TrendMicro,所以以 Adob​​e Reader 为例:

    Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* |
        Where-Object { $_.DisplayName -like "*Adobe Reader*" } |
        Select-Object DisplayName, DisplayVersion
    

    如果您只想将数字 Version 属性用作比较,请更新:

    Select-Object -Expand DisplayVersion
    

    【讨论】:

    • 成功了,谢谢,你能解释一下有什么区别吗? HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\ 和 HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\
    • 检查我的答案中的链接,因为它解释了:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-22
    • 2021-08-07
    • 2018-07-04
    • 2019-06-15
    • 2020-07-31
    • 1970-01-01
    相关资源
    最近更新 更多