verbessertes Windows-Update

  • Ich habe das Skript aus der PC Magazin ein wenig aufgemöbelt um mögliche Fehlerquellen auszuschalten. Vor den Updates wird nun der Windows Updater v6 und zur Sicherheit auch einmal Windows Script Host installiert, sowie falls benötigt eine neuere Version der wuaueng.dll kopiert.

    Spoiler anzeigen
    [autoit]


    ;|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
    ;| Installation von: Windows Updates
    ;|
    ;| Autor: Jens Ottersberg
    ;|
    ;| Getestet mit: neu installiertem Rechner mit XP SP1
    ;|
    ;| Grundlage ist das Script aus der PC Magazin
    ;|___________________________________________________________________________________________________________________________________

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    #RequireAdmin
    #NoTrayIcon

    [/autoit] [autoit][/autoit] [autoit]

    #include "..\..\funktionen.au3"

    [/autoit] [autoit][/autoit] [autoit]

    If Not _IstOnline() Then
    MsgBox(48,"","Der PC ist nicht mit dem Internet Verbunden!")
    Exit
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    ;Windows Update v6 installieren
    ShellExecuteWait(@ScriptDir & "\wucv6.exe")
    ;Windows Script Host 5.6 installieren
    ShellExecuteWait(@ScriptDir & "\scd56de.exe", "/Q:A /R:N") ;Schalterquelle: http://aris-toolz.de
    ;Windows Script Host zumindest temporär aktivieren
    $wsh = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Script Host\Settings", "Enabled")
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Script Host\Settings", "Enabled", "REG_DWORD", "1")
    ;wuaueng.dll kopieren wenn <=5.4.3790.1000
    If (FileGetVersion(@SystemDir & "\wuaueng.dll") <= "5.4.3790.1000") Then
    FileMove(@SystemDir & "\wuaueng.dll",@SystemDir & "\wuaueng_old.dll",1)
    FileCopy(@ScriptDir & "\wuaueng.dll",@SystemDir & "\",1)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    ; checken
    _Splash ("Windows Updates", "Suche verfügbare Updates...")
    ShellExecute(@ScriptDir & "\check_2.vbs", "", @TempDir)
    Do
    Sleep(1000)
    If WinExists("Windows Script Host") Then WinKill("Windows Script Host")
    Until Not ProcessExists("wscript.exe")
    SplashOff()

    [/autoit] [autoit][/autoit] [autoit]

    ; herunterladen und installieren
    _Splash ("Windows Updates", "Lade Updates und installiere...")
    ShellExecute(@ScriptDir & "\install_2.vbs", "", @TempDir)
    Do
    Sleep(1000)
    If WinExists("Windows Script Host") Then WinKill("Windows Script Host")
    Until Not ProcessExists("wscript.exe")
    SplashOff()

    [/autoit] [autoit][/autoit] [autoit]

    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Script Host\Settings", "Enabled", "REG_DWORD", $wsh)

    [/autoit]

    Die Dateien gibt es hier:
    WSH
    wuaueng.dll
    Update v6

    2 Mal editiert, zuletzt von nuely (26. August 2007 um 14:58)