gpt4 book ai didi

c++ - 如何在离线状态下检测当前的 Windows 更新状态?

转载 作者:太空宇宙 更新时间:2023-11-04 12:30:09 25 4
gpt4 key购买 nike

我将使用 wuapi 检测我的操作系统更新状态。

使用IUpdateSearcher::Search我可以做到,但是这个功能只能在线使用。

离线时我也使用 IUpdateServiceManager::AddScanPackageService 函数来获取状态,但是这个函数需要 wsusscn2.cab 文件而且这个文件太大了。

在离线时是否有任何其他 wuapi 来检测 windows 更新状态,或者是否有任何注册表或系统文件来检测它?

谢谢你的帮助...

最佳答案

即使离线,您也可以使用 Windows Update API 搜索来查看需要哪些更新。您可以设置 IUpdateSearcher 对象的 Online在调用 Search 或 BeginSearch 之前将属性设置为 false。这样做将执行离线扫描,其中 WU 只是重新评估它已经知道的更新。这将脱机工作,也将返回更快的结果。您应该注意两个缺点:

  • 离线扫描显然不会返回有关自上次计算机进行在线扫描以来发布的任何新更新或修改更新的信息。
  • 如果自上次计算机进行在线扫描后硬件或软件配置发生了变化,您的离线扫描可能不会返回因配置变化而变得适用的更新信息,即使这些更新已经在上次在线扫描的时间。举一个简单的例子,如果您安装了 Office,您的离线扫描将不会返回 Office 更新,直到您下次进行在线扫描。这是因为 WU/MU/WSUS/SCCM 服务试图通过仅告知客户端可能适用的更新来节省时间和带宽,而不是将整个更新目录下载到每个客户端。由于你的计算机之前没有安装 Office,因此服务不会将 Office 更新通知你的计算机。

关于c++ - 如何在离线状态下检测当前的 Windows 更新状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58970273/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com