问题标签 [windows-update]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2988 浏览

winapi - Windows 更新代理与 WMIC QFE GET

我正在探索以下两种获取 Windows 补丁信息的方法的可靠性。

  1. 使用 Windows 更新代理 - IUpdateSearcher 接口与 COM。
  2. 使用 WMIC QFE GET(通过客户端或带有 COM 的 WMI 接口)

以下是我对上述两种方法的疑问

使用 Windows 更新代理 - IUpdateSearcher 接口与 COM。

  1. IUpdateSearcher 是否浏览以下注册表并提供信息?
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\基于组件的服务
  2. 是否有任何其他注册表路径 IUpdateSearcher 寻找提供更新信息?
  3. IUpdateSearcher 是否提供了 WMIC QFE 提供的超集?

使用 WMIC QFE GET(通过客户端或带有 COM 的 WMI 接口)

  1. WMIC QFE 是否搜索以下注册表路径并提供信息?HKEY_LOCAL_MACHINE\Software\Microsoft\Updates (或) HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Updates
  2. WMIC QFE GET 是否有任何其他注册表路径用于提供更新信息?

另外,以上两种方式,

  1. 哪种方法是在不丢失数据的情况下获取更新信息的最佳方法?
  2. 哪种方法执行得更快?

有人可以为我的所有查询提供答案吗?

0 投票
1 回答
1062 浏览

windows - IUpdate::BundledUpdates 究竟检索了什么?

当我们尝试使用 WUA API 检索 Windows 更新信息时,以下是我遵循的过程。但我对 IUpdate::BundledUpdates 属性有点困惑。

  1. 创建一个 IUpdateSearcher
  2. 根据搜索条件进行搜索。我提供的搜索条件为“IsHidden=1 或 IsInstalled=1”
  3. 您将获得 IUpdateCollection 作为搜索结果。
  4. 在 IUpdateCollection 中使用 get_Item,我检索了每个更新 (IUpdate) 并打印了所需的值(在我的例子中是 KB 编号)。
  5. 但同样在 IUpdate 中,您有一个 BundledUpdate 属性,它为 IUpdateCollection 提供了 get_BundledUpdates() 方法。当我迭代 BundledUpdates 的结果时,我没有得到任何结果。

我在检索捆绑更新时遗漏了什么吗?(或)我指定的标准是否包括捆绑更新作为 IUpdateCollection 的第一个结果集的一部分?

同样在 MSDN 中,WUA API 中的每个接口都缺少示例,有人可以提供任何资源来清楚地解释 WUA API 中的每个接口的作用吗?

添加了 C++ 控制台应用程序的完整源代码:

0 投票
1 回答
5845 浏览

c# - 如何知道 Windows 更新是否正在等待安装

可能重复:
检测 Windows 是否已准备好下载/安装 Windows 更新的最佳方法?

我正在使用 C# .net 3.5。

我如何知道 Windows 更新中是否有准备安装的更新?

在 Windows 8 上,当 Windows 更新等待安装更新时,睡眠选项被禁用。

而不是常规的 3 个选项:1.睡眠2.重新启动3.关机,只有 2 个选项:1.重新启动和更新2.关机和更新。我需要识别此状态并通知用户机器无法进入睡眠模式,因为正在等待安装更新。

我可以使用 WUAPILib 吗?

谢谢

0 投票
1 回答
6328 浏览

c++ - Windows 更新代理纯 win32 API

我正在开发一个示例代码来获取有关 Windows 更新监控的信息。我碰到了 Windows 更新代理 API。链接: http: //msdn.microsoft.com/en-us/library/windows/desktop/aa387099 (v=vs.85).aspx

但我找不到任何适用于 win32 的 API。我发现只有 C#/.NET 接口。有没有对应的win32 API?

具体来说,我想找出 Windows 更新/补丁的“发布日期”。期待任何建议和指导。

  • 斯里瓦萨
0 投票
0 回答
917 浏览

c# - 我如何知道 Windows 更新当前是否正在运行?

我正在使用 .net 3.5 处理 C#

我的应用程序需要让计算机进入睡眠状态。问题是,如果 Windows Update 正在运行,它不会阻止计算机进入睡眠状态。所以我想等到 Windows 更新完成后再让计算机进入睡眠状态。

有没有办法以编程方式判断 Windows 更新当前是否正在运行?

我试图检查 Wuauclt 或 TrustedInstaller 是否正在运行,但显然即使 Windows 更新未运行它们也在运行。

0 投票
1 回答
9200 浏览

windows - Windows 更新 GDR 与 LDR (QFE)

在浏览Windows 修补程序和更新网站上的信息时,我了解到 Windows 维护两个不同的分支来提供更新和修补程序,并且根据描述,

  1. GDR -> 所有 Windows 更新都属于此类别。
  2. LDR (QFE) -> 所有修补程序都属于此类别。

在检索

  1. Windows 更新信息与Windows 更新代理 API
  2. 带有 WMIC QFE GET 的修补程序/LDR/QFE 信息

我发现某些 KB 编号在 Windows Update/Hotfix 中很常见。这怎么可能?根据有关 GDR 和 LDR 的描述,它说

默认情况下,Windows 系统上的所有组件都在每个主要版本之后的 GDR 分支上启动。当您从 Windows 更新为 GDR 组件安装更新时,它会使用 GDR 版本进行升级。当您安装特定的修补程序时,修补程序包中的文件和组件将迁移到 LDR 分支。此时,该特定组件被标记为 LDR 组件。如果您在此组件上安装更新的更新,Windows 服务技术将自动为您从 LDR 分支安装适当的最新版本。

有人可以帮助我了解更新和修补程序信息中常见的 KB 编号的原因吗?

0 投票
2 回答
2067 浏览

c# - 如何可靠地检查是否使用 C# 启用了 Windows 更新?

我试图检查是否启用了 Windows 更新。我在 Windows 7 x64 Ultimate 上添加了对 c:\windows\system32\wuapi.dll 的引用并编写了这段代码

代码无法构建。我收到以下错误:

错误 1 ​​类型“WUApiLib.AutomaticUpdatesClass”没有定义构造函数
错误 2 无法嵌入互操作类型“WUApiLib.AutomaticUpdatesClass”。请改用适用的接口。
错误 3“WUApiLib.AutomaticUpdatesClass”不包含“ServiceEnabled”的定义,并且找不到接受“WUApiLib.AutomaticUpdatesClass”类型的第一个参数的扩展方法“ServiceEnabled”(您是否缺少 using 指令或程序集引用?)

0 投票
1 回答
231 浏览

visual-studio-2010 - asp.net开发服务器上的xap加载错误

最近我开始遇到一个奇怪的错误,加载 xap 文件时它停止了!在 %4 中的 %95 中非常随机。

浏览器的开发者控制台出现错误

未捕获的错误:Silverlight 应用程序代码中未处理的错误:2104
类别:InitializeError
消息:无法下载 Silverlight 应用程序。检查网络服务器设置

当我打开所有调试选项时,我看到了

**System.Net.Sockets.SocketException 发生

消息=远程主机强制关闭现有连接 Source=System ErrorCode=10054 NativeErrorCode=10054 StackTrace: at System.Net.Sockets.Socket.Send(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags) InnerException:

在提琴手上,我可以清楚地看到 4 个 7MB xap 正在下载并中断!

注意:此错误仅发生在 iis-express 和 asp.net dev.server 上。在部署平台上一切正常。

0 投票
1 回答
3743 浏览

c# - 来自 HRESULT 的异常:查询 Windows 更新时出现 0x80240007

我在尝试获取已安装的 Windows 更新时收到错误“HRESULT 异常:0x80240007”。我的代码在 Windows 7 中运行良好,但在 Windows XP 中无法运行。我在行中收到错误var history = updateSearcher.QueryHistory(0, count);

这是我的代码片段:

我需要对代码进行哪些更改?

0 投票
0 回答
751 浏览

c# - 如何通过 WUAPI 从 DownloadContents 获取 DownloadUrl

我想获取 windows 更新补丁的下载 url,我的代码是

通常我可以得到下载网址,但有时我不能。例如,当

调试显示“DownloadContents”没有孩子,我该怎么办?