zoukankan      html  css  js  c++  java
  • VBS列出windows更新列表

    Set objSession = CreateObject("Microsoft.Update.Session")
    Set objSearcher = objSession.CreateUpdateSearcher
    
    dim fso, f
    set fso = CreateObject("Scripting.FileSystemObject")
    
    path = fso.GetFolder(".").Path
    
    '在脚本所在目录创建一个xls文件来记录,实际上是一个html表格内容,可以用excel打开
    set f = fso.CreateTextFile(path + "WindowsUpdatesList.xls", true, -1)
    '第二个参数表示目标文件存在时是否覆盖
    'object.CreateTextFile(filename[, overwrite[, unicode]])
    '其中unicode参数可以为以下几种:
    
    '-2 以系统默认格式打开文件。 
    '-1 以 Unicode 格式打开文件。 
    '0 以 ASCII 格式打开文件。
    '未指定unicode参数时发现表头乱码【用的是utf-8编码】,但内容部份是正确的【用的是unicode】,不知为何?
    
    intHistoryCount = objSearcher.GetTotalHistoryCount
    
    Set colHistory = objSearcher.QueryHistory(1, intHistoryCount)
    
    f.WriteLine "<table><thead><tr><th>更新时间</th><th>补丁标题</th><th>补丁说明</th><th>操作</th></tr></thead><tbody>"
    
    For Each objEntry in colHistory
    	f.WriteLine "<tr>"
    	f.WriteLine "<td>" & objEntry.Date & "</td>"
    	f.WriteLine "<td>" & objEntry.Title & "</td>"
    	f.WriteLine "<td>" & objEntry.Description & "</td>"
    	Select Case objEntry.Operation
            Case 1
                f.WriteLine "<td>安装</td>"
            Case 2
                f.WriteLine "<td>卸载</td>"
            Case Else
                f.WriteLine "<td>未知</td>"
        End Select
    	f.WriteLine "</tr>"
    Next
    
    f.WriteLine "</tbody></table>"
    set f = nothing
    set fso = nothing


    如果需要调试,可以在命令行输入:wscript /x script.vbs,然后选择调试器进行调试

    附一张调试图片,可以看到objEntry还有更多属性:


  • 相关阅读:
    Poj 3177 Redundant Paths (双连通分支+节点统计)
    Uva 796 Critical Links (割边+排序)
    Lightoj 1020
    Flip Game---poj1753(状压+bfs)
    Best Cow Line---poj3617(贪心)
    滑雪---poj1088(动态规划+记忆化搜索)
    King's Quest---poj1904(连通图缩点)
    Steady Cow Assignment---poj3189(多重匹配+二分)
    B. Berland National Library---cf567B(set|模拟)
    HDU Today---hdu2112(最短路-_-坑在是无向图)
  • 原文地址:https://www.cnblogs.com/apollokk/p/6713805.html
Copyright © 2011-2022 走看看