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还有更多属性:

VBS列出windows更新列表的更多相关文章

  1. 关于Android SDK Manager无法获取更新列表的正确设置

    1.以"管理员身份运行"SDK Manager. 2.Android SDK Manager"=>"Tools"=>"Optio ...

  2. windows更新文件和windows.old文件夹清理

    在对Windows系统进行升级之后会发现C盘多出一个Windows.old文件夹,直接点击删除缺没有权限,不能进行删除. 在对window进行修复补丁时会产生大量的补丁更新文件,有时不清楚文件存在在哪 ...

  3. Windows更新清理工具 (winsxs 清理工具)

    Windows 更新清理工具是一款效果非常显著的Windows7.Windows8操作系统清理优化工具!经常安装系统的朋友相比有所体会,刚刚安装完成的Win7.Win8其实占的空间并不大,去掉页面文件 ...

  4. 如何检查机器是否因为装了Windows更新而需要重新启动

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:如何检查机器是否因为装了Windows更新而需要重新启动.

  5. vue2.0 — 移动端的输入框实时检索更新列表

    我们都是行走在这世界的孤独者 - 暖暖 最近在做vue2.0的项目遇到一个移动端实事检索搜索更新列表的效果,但用户在搜索框输入客户的电话或姓名的时候,客户列表内容会做相应的更新,下面给大家看下图~· ...

  6. Windows 10-限制Windows更新上传带宽

    Windows Update Delivery Optimization可帮助您更快,更可靠地获取Windows更新和Microsoft Store应用程序. Windows Update Deliv ...

  7. 安全检查,Windows更新出现8024402F错误如何解决

    背景,每个月都要进行例行检查,需要更新windows补丁包,病毒库等操作,谁知今天windows报错了: windows 代码8024402f 错误,原因是更新日志和缓冲出了问题. 解决步骤 : 1. ...

  8. Windows更新导致的打印问题

    最近很多BarTender用户都出现了打印问题,如3700错误消息及3721错误消息.这个问题存在于BarTender的所有版本,这主要是因为什么?又该如何去解决呢? 根据BarTender英文官网提 ...

  9. 获取WINDOWS打印机列表

    获取WINDOWS打印机列表 如何知道WINDOWS已经安装了哪些打印机? 1) usesVcl.Printers 2) Printer.Printers  // property Printers: ...

随机推荐

  1. 关于/tmp/ 目录自动清理文件

    问题:今天开发人员给我说了一个错误:The temporary upload location [/tmp/tomcat.1337767218595042057.80/work/Tomcat/loca ...

  2. [JLOI2014]松鼠的新家-树链剖分

    最开始的时候我在写线段树部分的时候还打了一个build,后来一想,打个球球大作战的build啊!!!有个锤子的用啊!!! #include<bits/stdc++.h> using nam ...

  3. MySQL ERROR 1045 (28000)

    mysql ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: YES) 到配置文件my.in ...

  4. LR使用web_add_cookie函数进行cookie模拟

    1    为什么要使用cookie模拟 从日常项目测试过程中的问题说起.比如要进行论坛中的文件下载功能的测试.我们都知道只有登录用户才能进行下载操作,这样我们的测试过程可能就变成了先登录系统,然后再进 ...

  5. Spring 将请求参数封装成对象

    简单描述:最近手里的模块,前后台之间需要传递很多的参数,使用封装的PageData,来获取请求参数的,作微服务迁移的时候,就涉及到需要把参数从pagedata里取出来,一个一个的放到对象的属性中.就很 ...

  6. EF core的模型映射

    在EF core里,可以通过实现IEntityTypeConfiguration来进行映射. 一.官网文档 https://docs.microsoft.com/en-us/ef/core/what- ...

  7. Bootstrap模态框垂直高度居中问题

    Bootstrap对话框改变其默认宽高,高度不会自适应居中.为解决这个问题,最好的方式是能够通过css来解决,试了几种网上的方案发现都不行.然后想到可以通过js来修正,什么时候修正最好?于是想到可以注 ...

  8. VS挂机移动鼠标代码

    #include <time.h> #include <stdio.h> #include <Windows.h> HANDLE ghMutex; //////// ...

  9. xiao_ren

  10. 2018-2019 20165239 Exip MSF基础应用

    实践内容(3.5分) 本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要完成: 1.1一个主动攻击实践,如ms08_067; (1分) 1.2 一个针对浏览器的 ...