我想创建一个应用程序,它应该用于在没有互联网连接的情况下更新计算机。为了解决这个问题,软件首先从微软下载了当前的 wsusscn2.cab。然后应用程序应该从 Microsoft 下载所有可能的更新文件。两者(wsusscn2.cab 和更新)都必须存在于远程计算机(例如 USB 记忆棒)上,并且程序会检查需要在系统上安装哪些更新。我的问题是第二步,应用程序应该下载所有更新文件。
我已经尝试读出 wsusscn2.cab 文件,但我真的找不到任何更新的下载 URI。我还尝试使用 IUpdateSearcher 类在文件中搜索更新,但它仅根据我的系统查找更新(我想要所有可能的更新)。
UpdateSession session = new UpdateSession();
UpdateServiceManager manager = new UpdateServiceManager();
IUpdateService service = manager.AddScanPackageService("Offline Sync Service", SourceFilePath, 1);
IUpdateSearcher searcher = session.CreateUpdateSearcher();
searcher.ServiceID = service.ServiceID;
ISearchResult result = searcher.Search("IsInstalled=0 OR IsInstalled=1");
// continue with downloading
正如我所说,搜索功能的实际输出是基于我的系统。我希望能够获得所有更新。