Możesz sprawdzić i automatycznie zainstalować aktualizacje za pomocą skryptu. Będzie to działać w systemie XP lub Windows 7.
Istnieje wiele skryptów dostępnych do pobrania, oto moje :
' Written in 2007 by Harry Johnston, University of Waikato, New Zealand.
' This code has been placed in the public domain. It may be freely
' used, modified, and distributed. However it is provided with no
' warranty, either express or implied.
'
' Exit Codes:
' 0 = scripting failure
' 1 = error obtaining or installing updates
' 2 = installation successful, no further updates to install
' 3 = reboot needed; rerun script after reboot
'
' Note that exit code 0 has to indicate failure because that is what
' is returned if a scripting error is raised.
'
Set updateSession = CreateObject("Microsoft.Update.Session")
Set updateSearcher = updateSession.CreateUpdateSearcher()
Set updateDownloader = updateSession.CreateUpdateDownloader()
Set updateInstaller = updateSession.CreateUpdateInstaller()
Do
WScript.Echo
WScript.Echo "Searching for approved updates ..."
WScript.Echo
Set updateSearch = updateSearcher.Search("IsInstalled=0")
If updateSearch.ResultCode <> 2 Then
WScript.Echo "Search failed with result code", updateSearch.ResultCode
WScript.Quit 1
End If
If updateSearch.Updates.Count = 0 Then
WScript.Echo "There are no updates to install."
WScript.Quit 2
End If
Set updateList = updateSearch.Updates
For I = 0 to updateSearch.Updates.Count - 1
Set update = updateList.Item(I)
WScript.Echo "Update found:", update.Title
Next
WScript.Echo
updateDownloader.Updates = updateList
updateDownloader.Priority = 3
Set downloadResult = updateDownloader.Download()
If downloadResult.ResultCode <> 2 Then
WScript.Echo "Download failed with result code", downloadResult.ResultCode
WScript.Echo
WScript.Quit 1
End If
WScript.Echo "Download complete. Installing updates ..."
WScript.Echo
updateInstaller.Updates = updateList
Set installationResult = updateInstaller.Install()
If installationResult.ResultCode <> 2 Then
WScript.Echo "Installation failed with result code", installationResult.ResultCode
For I = 0 to updateList.Count - 1
Set updateInstallationResult = installationResult.GetUpdateResult(I)
WScript.Echo "Result for " & updateList.Item(I).Title & " is " & installationResult.GetUpdateResult(I).ResultCode
Next
WScript.Quit 1
End If
If installationResult.RebootRequired Then
WScript.Echo "The system must be rebooted to complete installation."
WScript.Quit 3
End If
WScript.Echo "Installation complete."
Loop
Uruchamiasz to z wiersza poleceń w następujący sposób:
cscript wsusupdate.vbs
Mój skrypt jest minimalnie funkcjonalny, ale może być nadal przydatny. Dostępne są inne takie skrypty z wieloma dodatkowymi funkcjami, spróbuj wyszukać w Google.
<59, 3> <null>: 0x80240044
. Wiesz, dlaczego to się nie udaje? Próbowałem znaleźć metody, do których odwołuje się to odniesienie, ale nie mogłem zrozumieć, co się dzieje. Czy możesz wskazać mi właściwy kierunek?Poza zwykłym sposobem korzystania z usługi Windows Update można wymusić sprawdzenie z wiersza polecenia.
Otwórz wiersz polecenia administratora i uruchom:
C:\> %windir%\system32\wuauclt.exe /detectnow
Wuauclt.exe to klient AutoUpdate Windows Update i służy do sprawdzania dostępności aktualizacji (dla różnych wersji platformy MS Windows) z Microsoft Update.
To nie wymusi instalacji.
źródło
Aby sprawdzić dostępność aktualizacji, przejdź do Panelu sterowania, zabezpieczeń, Windows Update, a następnie kliknij „Sprawdź aktualizacje”.
źródło
Innym sposobem wymuszenia prawdziwego ponownego skanowania aktualizacji jest wyczyszczenie tablicy, usuwając wszystkie aktualizacje przechowywane w % windir% \ Windows \ SoftwareDistribution \ Download :
Następnie przejdź do Windows Update i „Sprawdź dostępność aktualizacji”. Może to potrwać godzinę, ponieważ każdy aktualizowalny plik w woluminie systemowym jest sprawdzany (kolejne „Sprawdzanie aktualizacji” będzie szybkie). Takie podejście eliminuje błędy, nieuczciwe aktualizacje i zapewnia czysty, aktualny system, przynajmniej na tyle, na ile MS go widzi.
źródło
Korzystam z narzędzia innej firmy o nazwie wuinstall do aktualizacji instalacji nowego systemu Windows. dzięki temu możesz zautomatyzować cały proces aktualizacji, w tym automatyczne ponowne uruchomienie. myślę, że jest to jeden z najszybszych sposobów na uzyskanie świeżego systemu Windows bez udziału użytkownika.
źródło
Przekonałem się, że jeśli w ramach nowej instalacji systemu Windows 7 uaktualniłeś IE lub nie uruchomiłeś jeszcze IE i odpowiedziałeś na pytania wprowadzające, Windows Update wyświetli błąd. Nie znalazłem też sposobu na przejście z Windows Update na Microsoft Update bez przejścia przez GUI, więc ręcznie uruchamiam IE, uruchamiam go, a następnie konfiguruję Windows Update za pomocą GUI, dzięki czemu mogę przejść do Microsoft Update i uniknąć błąd początkowy. Twój przebieg może się różnić.
źródło
Miałem sukces, wykonując kroki opisane w tym poście , instalując IE8 i WI4.5 , uruchomi automatyczne aktualizacje, aby rozpocząć pobieranie.
źródło