我创建了一个控制台应用程序 (C#) 来搜索 Windows 更新并安装它们。我正在使用WUApiLib.dll库来获取、下载和安装更新。它运行良好,只是它没有找到其他 Microsoft 产品(如 Microsoft Office、SQL Server 等)的更新。
我正在使用的代码如下:
IUpdateSession updateSession; // Object to hold our MS Update Session
IUpdateSearcher updateSearcher; // Object to perform our MS Win Update Search
ISearchResult results; // Object to hold our MS Win Update Search Results
updateSession = new UpdateSession();
updateSearcher = updateSession.CreateUpdateSearcher();
if (searchOnline == true) //all my tests were with searchOnline = true
{
updateSearcher.ServerSelection = ServerSelection.ssWindowsUpdate;
updateSearcher.Online = true;
log("Update searcher set to search online.");
}
try
{
results = updateSearcher.Search("IsInstalled=0");
}
catch (Exception ex)
{
log(" ERROR: Something went wrong in our update search. Details below...");
log(" Error Msg: " + ex.Message);
return 1;
}
在 Windows Server 或 Windows 10 客户端 PC 上使用期间,该功能updateSearcher.Search("IsInstalled=0")
返回各种 Windows 更新,但没有 Microsoft Office 或 Microsoft SQL 服务器的更新,但是当我转到控制面板(或设置)并单击“在线搜索更新”它还返回上述产品的更新。玩弄不同的标准(Type='Software'
例如)不会改变任何东西。
数小时的谷歌搜索并没有告诉我是否可以选择包含这些更新(就像您在 GUI 中有选项)以及如何包含这些更新。
有谁知道如何做到这一点?
谢谢