Центр обновления Windows - Желание использовать Интернет, а не WSUS

Я пытаюсь настроить этот код, чтобы он выполнял поиск в Центре обновления Windows для проверки в режиме онлайн от Microsoft, а не с локального сервера WSUS. Этот код работает нормально, если я запускаю его, когда я нахожусь вне сети моей компании, но я хочу работать из сети компании и обходить сервер WSUS.

    Private Sub CheckForUpdates()

    Dim objUpdateSession As WUApiLib.UpdateSession
    Dim objUpdateSearcher As WUApiLib.UpdateSearcher
    Dim objSearchResults As WUApiLib.ISearchResult
    Dim objUpdateDownloader As WUApiLib.UpdateDownloader
    Dim NowInstallThem As WUApiLib.UpdateInstaller
    Dim NumPatches As Integer = -1
    Dim Updates As New WUApiLib.UpdateCollection

    Try
        objUpdateSession = New WUApiLib.UpdateSession
        objUpdateSearcher = objUpdateSession.CreateUpdateSearcher()
        objSearchResults = objUpdateSearcher.Search("IsInstalled=0 and Type='Software'")
        NumPatches = objSearchResults.Updates.Count

        MessageBox.Show("Number of patches: " & NumPatches.ToString)
        Dim patch As WUApiLib.IUpdate

        For a = 0 To NumPatches - 1
            patch = objSearchResults.Updates.Item(a)
            Updates.Add(patch)
        Next

        If NumPatches > 0 Then
            objUpdateDownloader.Updates = Updates
            objUpdateDownloader.Download()
            MessageBox.Show("patches downloaded")

            NowInstallThem.Updates = Updates
            NowInstallThem.Install()
            MessageBox.Show("patches installed")
        End If

    Catch ex As Exception
    End Try
End Sub

2 ответа

Этим управляет

      UseWUServer

в разделе реестра клиентов

      HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU
  1. Сохраните значение ключа
  2. Установите его на «0»
  3. Установите таймер, который сбрасывает значение через 10 секунд.
  4. Немедленно запустите поиск searchResult = updateSearcher.Search(...)

Если ключ или значение отсутствуют, значит, серверы обновлений Microsoft уже используются.

Это немного хакерский, но единственный способ, который я нашел.

Понимая, что это старый вопрос (с довольно новым ответом), способ сделать это - установить ServerSelectionсвойствоIUpdateSearcher(в исходном примере objUpdateSearcherэкземпляр) кssWindowsUpdate(2).

Другие вопросы по тегам