【问题标题】:VBScript list installed softwares on windows server 2008 R2VBScript 列出 windows server 2008 R2 上安装的软件
【发布时间】:2023-03-19 10:35:02
【问题描述】:

我想用 VBscript 列出 windows server 2008 R2 上已安装的软件。 我想验证必备软件(其中之一是 .NET Framework 3.5.1)。 我实际上有两个解决方案,它们都没有显示所有的软件。

Const HKLM = &H80000002 'HKEY_LOCAL_MACHINE
installedSoftwaresPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"

Set objReg = GetObject("winmgmts://./root/default:StdRegProv")

objReg.EnumKey HKLM, installedSoftwaresPath, arrSubkeys
For Each strSubkey In arrSubkeys
    Ret = objReg.GetStringValue(HKLM, installedSoftwaresPath & strSubkey, "DisplayName", SoftwareName)
    If Ret <> 0 Then
    objReg.GetStringValue HKLM, strKey & strSubkey, "QuietDisplayName", SoftwareName       
    End If
    If SoftwareName<> "" Then
        WScript.Echo VbCrLf & "Display Name: " & SoftwareName
    End If
Next

另一种解决方案是:

Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colSoftware = objWMIService.ExecQuery("Select * from Win32_Product")

For Each objSoftware in colSoftware
    WScript.Echo objSoftware.Caption
Next

是否可以获取所有已安装的软件?如果没有,我将为每个必备软件制定特定的解决方案。

编辑: 我的脚本发现的一些软件:

Microsoft 应用程序错误报告, Microsoft Visual C++ 2008 可再发行组件, 微软安全客户端, Adobe阅读器

我想找到什么: .NET 框架 3.5.1

我想要一个通用的解决方案来找到所有安装的软件。

解决方案: 似乎没有通用的方法来检查已安装的软件。我在此路径中找到了 .NET 框架注册表项:

"SOFTWARE\Microsoft\MSBuild\ToolsVersion\v3.5\"

【问题讨论】:

  • 我猜这两个脚本只显示通过 Microsoft Windows Installer (MSI) 安装的软件。您能否添加一两个已安装但未显示的软件示例?这可以证明或反驳我的假设。
  • 我编辑了问题以添加信息。

标签: vbscript windows-server-2008-r2


【解决方案1】:

由于无法访问您的服务器以查看您正在寻找的软件是如何安装的,我只能猜测您可能会如何修改您的脚本。

但是,除此之外,您可能还应该寻找其他地方: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\

例如,您可能想查看:

HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall
HKLM\SOFTWARE\Classes\Installer
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData

您可能会在其中一个位置找到您要找的东西。

您可能还想使用 RegEdit 对“.NET Framework 3.5.1”进行“查找”,以查看它是否显示在您可以可靠找到的位置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-21
    • 2013-04-19
    • 2013-06-06
    • 2011-05-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多