Seite 1 von 1

Installationsstatus abfragen

Verfasst: 31 Jul 2008, 09:27
von major0190
Hallo,

bin gerade dabei mich mit dem Installationsstatus zu beschäftigen, d.h. im Augenblick wird immer nur abgefragt ob genügend Platz auf der Festplatte ist. Es kommt aber öfter vor, dass es andere Einflüsse gibt warum eine Installation nicht ordentlich durchgelaufen ist.

Hat jemand schon Funktionen eingebaut, der z.B. bei einer MSI-Installation so was wie einen errorlevel abfragt und dann in der webconsole den Status auch auf failed (isFatalError) stellt?

vg, Thomas Freier

Re: Installationsstatus abfragen

Verfasst: 31 Jul 2008, 13:47
von heuft_kdi
Ja. So etwas habe ich.

Vor OPSI 3.3 sah das z.B. so aus:

Code: Alles auswählen

            ;# Windows Installer 3.1 V2 (KB893803-V2)
            if not ( GetRegistryStringValue("[HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\HotFix\KB893803v2] Installed") = "1" )
                Message=installiere Windows Installer 3.1 V2 (3.1.4000.2435)
                ShowBitmap /1 "%SCRIPTPATH%\logo-win-xp-pro.bmp" "Bitte Warten"
                winbatch_install_KB893803-V2
                ShowBitmap /1 "%SCRIPTPATH%\logo-win-xp-pro.bmp"
                if not ( GetRegistryStringValue("[HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\HotFix\KB893803v2] Installed") = "1" )
                    logError "Windows Installer 3.1 V2 (KB893803-V2) wurde nicht korrekt installiert.")
                    set $instErr$ = "yes"
                endif
            endif
Mit OPSI 3.3 kam ja endlich das Errorlevel, so das man hier so arbeiten kann:

Code: Alles auswählen

        ;# Prüfen ob SP3 installiert ist
        if not ( GetRegistryStringValue("[HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion] CSDVersion") = "Service Pack 3")
            if not (HasMinimumSpace ("%SYSTEMDRIVE%", "860 MB"))
                LogError "Nicht genügend Platz auf C:. 860 MB auf C: für MS Windows XP Service pack 3"
                isFatalError
            else
                Message=installiere Windows XP SP 3
                ShowBitmap /1 "%SCRIPTPATH%\logo-win-xp-sp3.bmp" "Bitte Warten"
                winbatch_install_xp_sp3
                if ( not ( GetLastExitCode = "3010" ) ) and ( not ( GetLastExitCode = "0" ) )
                    logError "Windows XP SP3 wurde nicht korrekt installiert.")
                    isFatalError
                endif
                ShowBitmap /1 "%SCRIPTPATH%\logo-win-xp-pro.bmp"        
                ExitWindows /ImmediateReboot
            endif
        endif

Re: Installationsstatus abfragen

Verfasst: 31 Jul 2008, 15:12
von major0190
Hallo Kai,

vielen Dank für den Lösungsvorschlag - werde ich gleich mal versuchen umzusetzen.

Gibt es eigentlich auch eine Möglichkeit zu erkennen wieviel Plattenplatz eine Software/Installation benötigt?
if not (HasMinimumSpace ("%SYSTEMDRIVE%", "860 MB"))


vg, Thomas Freier

Re: Installationsstatus abfragen

Verfasst: 31 Jul 2008, 15:42
von heuft_kdi
Die einfachste Methode ist ja, einfach den Verbrauch der Platte von vor und nach der Installation zu vergleichen.

Leider brauchen einige Installationsroutinen aber mehr Plattenplatz als die Eigentliche Installation.

Bei meinen Beispiel kam ich auf die 680 MB, weil Microsoft tatsächlich einen Knowledge Artikel hat, wo der Plattenverbrauch für SP3 drin beschrieben ist. Und da bei mir das SP3 schon ausgepackt im Installationsordner liegt, spare ich z.B. diese 300 MB.