【问题标题】:How to enumerate all ActiveX elements with WMI?如何使用 WMI 枚举所有 ActiveX 元素?
【发布时间】:2010-10-22 07:08:46
【问题描述】:

是否可以使用 WMI 脚本枚举所有(或仅启用的)ActiveX 元素(*.dll、*.ocx)?

动机:ActiveXHelper

【问题讨论】:

    标签: javascript windows scripting activex wmi


    【解决方案1】:

    Scritomatic V2 工具有一些这样的示例:

    On Error Resume Next

    常量 wbemFlagReturnImmediately = &h10 常量 wbemFlagForwardOnly = &h20

    arrComputers = Array("*") 对于 arrComputers 中的每个 strComputer WScript.Echo WScript.Echo "========================================== WScript.Echo "计算机:" & strComputer WScript.Echo "==========================================="

    设置 objWMIService = GetObject("winmgmts:\" & strComputer & "\root\CIMV2") 设置 colItems = objWMIService.ExecQuery("SELECT * FROM Win32_ClassicCOMClass", "WQL", _ wbemFlagReturnImmediately + wbemFlagForwardOnly)

    对于 colItems 中的每个 objItem WScript.Echo "Caption:" & objItem.Caption WScript.Echo "ComponentId:" & objItem.ComponentId WScript.Echo "描述:" & objItem.Description WScript.Echo "InstallDate:" & WMIDateStringToDate(objItem.InstallDate) WScript.Echo "名称:" & objItem.Name WScript.Echo "状态:" & objItem.Status WScript.Echo 下一个 下一个

    函数 WMIDateStringToDate(dtmDate) WScript.Echo dtm: WMIDateStringToDate = CDate(Mid(dtmDate, 5, 2) & "/" & _ Mid(dtmDate, 7, 2) & "/" & Left(dtmDate, 4) _ & " " & Mid (dtmDate, 9, 2) & ":" & Mid(dtmDate, 11, 2) & ":" & Mid(dtmDate,13, 2)) 结束功能

    【讨论】:

    • 据我所知,Win32_ClassicCOMClass 不是列出activex 对象的类。我找不到我的特定 activex 类或 Flash,但 ActiveX 助手发现它很好。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多