Windows Update Fehler-beheber ^^

  • Moin,
    da ich immer wieder probleme mit dem windows update habe, hab ich mir n script geschrieben, dass die wichtigsten Tipps durchführt, damit es wieder geht (Von google :) )

    Bei mir hats bis jetzt immer geholfen.
    Manchmal geht die RUN(@ScriptDir & "\run.bat") nicht - einfach von hand starten dann.

    dann n restart, und voila ;)

    €€ script vergessen xD


    [autoit]

    ;WIndows Update helper!
    ;Wenn Windows Update wiedermal streikt :>
    #include <Process.au3>
    _RunDOS("net stop wuauserv")
    if @error Then MsgBox(0,"Error", "Error in: " & @error)
    DirRemove("C:\Windows\SoftwareDistribution")
    DirRemove("C:\Windows\System32\SoftwareDistribution")
    FileDelete("C:\Windows\System32\spupdsvc.exe")
    $string = "regsvr32 wuaueng1.dll_regsvr32 wucltui.dll_regsvr32 wups.dll_regsvr32 wuweb.dll_regsvr32 jscript.dll_regsvr32 winhttp.dll_regsvr32 Softpub.dll_regsvr32 Wintrust.dll_regsvr32 Initpki.dll_regsvr32 Dssenh.dll_regsvr32 Rsaenh.dll_regsvr32 Gpkcsp.dll_regsvr32 Sccbase.dll_regsvr32 Slbcsp.dll_regsvr32 Cryptdlg.dll"
    $new = StringSplit($string, "_")
    For $i = 1 to $new[0]
    FileWrite(@ScriptDir & "\run.bat", $new[$i] & @CRLF)
    Next
    sleep(3000)
    RunWait(@ScriptDir & "\run.bat",@ScriptDir)
    MsgBox(64, "Neustart!", "Computer bitte neu starten!")
    FileDelete(@ScriptDir & "\run.bat")

    [/autoit]

    Einmal editiert, zuletzt von huggy (1. November 2007 um 17:14)

    • Offizieller Beitrag

    Hallo

    Ist das jetzt nur für Vista? Weil mit XP hatte ich noch keine Update probleme..

    Und warum machst du es mit Batch, guck dir das mal an:

    Spoiler anzeigen
    [autoit]

    ;WIndows Update helper!
    ;Wenn Windows Update wiedermal streikt :>
    #include <Process.au3>
    _RunDOS("net stop wuauserv")
    if @error Then MsgBox(0,"Error", "Error in: " & @error)
    DirRemove("C:\Windows\SoftwareDistribution")
    DirRemove("C:\Windows\System32\SoftwareDistribution")
    FileDelete("C:\Windows\System32\spupdsvc.exe")
    $string = "regsvr32 wuaueng1.dll_regsvr32 wucltui.dll_regsvr32 wups.dll_regsvr32 wuweb.dll_regsvr32 jscript.dll_regsvr32 winhttp.dll_regsvr32 Softpub.dll_regsvr32 Wintrust.dll_regsvr32 Initpki.dll_regsvr32 Dssenh.dll_regsvr32 Rsaenh.dll_regsvr32 Gpkcsp.dll_regsvr32 Sccbase.dll_regsvr32 Slbcsp.dll_regsvr32 Cryptdlg.dll"
    $new = StringSplit($string, "_")
    ProgressOn("","")
    For $i = 1 to $new[0]
    Run($new[$i] &' /s')
    ProgressSet(100*$i/$new[0])
    FileWrite(@ScriptDir & "\run.bat", $new[$i] & @CRLF)
    Next
    ProgressSet(98,"Bitte Warten...")
    While ProcessExists("regsvr32.exe");Wartet bis die Letzte regsvr32.exe weg ist.
    Sleep(100)
    WEnd
    ProgressOff()
    ;~ RunWait(@ScriptDir & "\run.bat",@ScriptDir)
    MsgBox(64, "Neustart!", "Computer bitte neu starten!")
    FileDelete(@ScriptDir & "\run.bat")

    [/autoit]

    Sonst gute arbeit huggy :) *stolz auf huggy bin*

    Mfg Spider

  • Oh, gute idee SPinne *stolz sei*

    hab es ohne autoit immer via Bat gelöst, ergo dacht ich mir die hau ich da rein & starte sie =)

    Und ja, es sollte für XP und vista sein.
    ich hab nämlich @ xp des öfteren update probleme :D

  • wie wäre es wenn du mit variablen wie %windir% arbeitest?

    kann mir mal einer genau erklären was das tool jetz macht.das es files löscht seh ich aber warum?