使用 PowerShell 验证 Microsoft Visual C++ Redistributable (x86) 版本

问题描述 投票:0回答:1

我管理的应用程序需要 Microsoft Visual C++ Redistributable (x86) 版本 14.25.x 或更高版本。 我正在测试的服务器版本为 14.34.31931,我可以在 PowerShell 中使用以下命令找到它:

$Key = Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Dependencies\VC,redist.x86,x86,14.34,bundle'

$Key.Version

我想知道,如果我可以搜索包含“VC,redist.x86”的内容并使用该键,而不是在 Get-ItemProperty 的最后一个位置包含“VC,redist.x86,x86,14.34,bundle” ,无论版本如何? 我知道如果我明白了,我可以比较实际的版本号,但似乎在我当前的搜索中,我只能基于已经知道它是版本 14.34.x 来搜索。

powershell registry
1个回答
0
投票

这里有一个例子

基于此人脚本https://www.reddit.com/r/SCCM/comments/cqif5a/visual_c_redist_detection_script/

##check VC Redistributable packages installed
 Get-ChildItem HKLM:\SOFTWARE\WoW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | ForEach-Object { 
    $CurDisplayName = $_.GetValue("DisplayName")
    if( $CurDisplayName -match "^Microsoft Visual C\+\+\D*(?<Year>(\d|-){4,9}).*Redistributable.*") {
        #$Year = $Matches.Year
        echo $Matches.0
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.