Java Update mit Bedingungen

  • Hallo,

    ich komme in Summe nicht weiter.

    Folgendes!

    Ich muss das aktuelle Java Update ausrollen.
    Die Silent Version kenne ich, aber...

    Vorher muss der IE geschlossen werden, mit Hinweiss, da evtl noch Programme laufen.
    Auf älteren PC´s zb XP dauert das Update etwas lange und im Silent Modus, weiß man nicht was passiert.
    Also sollte der Update Prozess gesucht werden und solange dieser läuft, auch angezeigt ( msgbox, gerne auch eine animierte Box bzw Fenster )werden.
    Prozess beendet, Meldung aus.
    Jetzt müssen noch zwei Dateien kopiert werden, Achtung XP und W7 beachten, denn diese müssen unter:
    C:\Users\%username%\AppData\LocalLow\Sun\Java\Deployment\security\ und bei xp halt unter c:\dokument und Einstellungen....
    Selbst das kopieren klappt bei mir nicht, darum rufe ich eine Batch auf, ja ist wohl nicht sehr elegant.

    Hier mal mein Versuch...

    [autoit]

    ; Updating Java
    ;#include <File.au3>
    Opt("ExpandEnvStrings", True)
    Global $sUserName = "usern"
    Global $sPassword = "passwort"
    Global $sNetwork = "test"

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

    ;Msgbox Warning IE close
    MsgBox(64, "ACHTUNG", "Bitte den Internet Explorer schliessen!")

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

    ; Ends Internett Explorer to avoid that Java is being used
    Local $PID = ProcessExists("iexplore.exe") ; Will return the PID or 0 if the process isn't found.
    While $PID
    ProcessClose($PID)
    $PID = ProcessExists("iexplore.exe")
    WEnd

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

    ; Install current verison of Java
    ; Creates a temporary map on C:\
    ;DirCreate("C:\tmp")
    ; Copies the install-program from server to C:\tmp
    ; Runs RunAsWait as administrator and installs Java in silent mode
    RunAs($sUserName, $sNetwork, $sPassword, 4, "\\server\freigabe\update\java\jre-7u51-windows-i586.exe /s")

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

    If ProcessExists("jre-7u51-windows-i586.exe") Then
    MsgBox(0, "Achtung", "Das Java Update läuft.")
    Else
    MsgBox(0, "Achtung", "Das Java Update läuft nicht.")
    EndIf

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

    ; copy exception sites
    ;FileCopy("\\server\freigabe\update\java\sec-files\*.*", "C:\user\%username%\AppData\LocalLow\Sun\Java\Deployment\security")
    ;FileCopy("\\server\freigabe\update\java\sec-files\*.*", "C:\benutzer\%username%\AppData\LocalLow\Sun\Java\Deployment\security")
    run ("\\server\freigabe\update\java\sec-copy.bat")
    MsgBox(0, "Updating Java", "Update fertig")

    [/autoit]

    Jetzt ne Frage an die Java Experten...

    ich muss einen Server eintragen unter "Sicherheit / Siteliste bearbeiten"
    hat man das mal manuell gemacht werden zwei Dateien erstellt, diese ( exception.sites und trused.cert ) würde ich dann auf den noch zu updatetenen Maschinen manuell kopieren, deshalb ober der Kopier Befehl aus dem Ordner "sec-files".

    Wäre sehr dankbar, wenn mir jemand das script überarbeiten kann... :thumbup: