Page 1 of 1

weiterhin ERROR 3010

Posted: 16. Jul 2009, 14:04
by madmaki
Hallo liebe Gemeinde,

trotz Studiums der Seite:

http://www.diew.eu/2009/06/24/der-richt ... rror-3010/

und Anpassung meiner setup.inf besteht das Problem mit ERROR 3010 weiter und die Empirum-Installation wirft den Fehler: -1 aus.

Hier meine setup.inf:

#Set:Product, DONTDELETE
#Reg:OnUninstallProduct, DELETE
#Reg:Product, DONTDELETE
#Ini:Product, DONTDELETE
#Security:Product
#Set:Uninstall, DELETE
#Set:ChangeMSISourcelist, DONTDELETE


[Set:Product]
Del "%MSILogFile%"
IF DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-0000-000000000004},UnInstallString") == "1" Then "RepairMSI" Else "InstallMSI" EndIf

[RepairMSI]
AddMeter 50
Call MsiExec /Fvomus "%SRC%\AcroPro.msi" TRANSFORMS="%SRC%\AcroPro.mst" REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qr /Li "%MSILogFile%"
If %ErrorLevel% == "3010" Then "RebootNeeded" EndIf
IF DoesTextInFileExist ("%ReInstSuccessMessage1031%", "%MSILogFile%") == "0" & DoesTextInFileExist ("%ReInstSuccessMessage1033%", "%MSILogFile%") == "0" Then "AbortMSIInst" EndIf
Del "%MSILogFile%"

[InstallMSI]
AddMeter 50
Call MsiExec /I "%SRC%\AcroPro.msi" TRANSFORMS="%SRC%\AcroPro.mst" /update "%src%\AcroProStdUpd910_T1T2_incr.msp" REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qr /Li "%MSILogFile%"
If %ErrorLevel% == "3010" Then "RebootNeeded" EndIf
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-0000-000000000004},UnInstallString") == "0" Then "AbortMSIInst" EndIf
Del "%MSILogFile%"

[Set:Uninstall]
-Del "%MSILogFile%"
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-0000-000000000004},UnInstallString") == "1" Then "AbortMSIUnInst" EndIf
If %ErrorLevel% == "3010" Then "RebootNeeded" EndIf
-Call MsiExec /X {AC76BA86-1033-0000-0000-000000000004} REBOOT=REALLYSUPPRESS /qr /Li "%MSILogFile%"
-AddMeter 50

[RebootNeeded]
SetReboot 1


[AbortMSIInst]
ErrorLogMsg %ErrorLogMessage% ErrorLevel: %ErrorLevel%
Abort

[AbortMSIUnInst]
-Abort
-ErrorLogMsg %ErrorLogMessage% ErrorLevel: %ErrorLevel%

Das Update wurde natürlich installiert, aber nach der nächsten Anmeldung legt Empirum von vorne los.

Weiß jemand Rat ???

Danke
madmaki

Posted: 16. Jul 2009, 14:35
by mniemann
Läuft die Installation (als Test!) wenn du alle Sprungmarken ab [Product] auskommentierst?
[Product]
;#Set:Product, DONTDELETE
;#Reg:OnUninstallProduct, DELETE
;#Reg:Product, DONTDELETE
;#Ini:Product, DONTDELETE
;#Security:Product
;#Set:Uninstall, DELETE
;#Set:ChangeMSISourcelist, DONTDELETE

Fehler "-1" ist nicht Fehler 3010

Posted: 16. Jul 2009, 14:46
by madmaki
Das hats leider nur insofern gebracht, als das Empirum jetzt "denkt", die Installation sei erfolgreich durchgelaufen. Ist sie aber natürlich nicht :cry:

Posted: 16. Jul 2009, 15:01
by mniemann
Sinn dahinter war zu prüfen, ob der Fehler "-1" durch das Paket selbst oder durch die ab [Product] verwendeten Aufrufe erzeugt wird - reines Debugging also ;)

Einfach die ; wieder entfernen. Wie verhält sich die Installation, wenn man sich als Administrator am System anmeldet und das Paket installieren lässt?

Posted: 16. Jul 2009, 15:09
by madmaki
Dann passiert das anfangs beschriebene auch, leider.

Posted: 16. Jul 2009, 15:38
by madmaki
Das führt leider zu keinem anderen Ergebnis.

Sorry, vergiß die Antwort - habe ich ja eben schon geschrieben.

Posted: 16. Jul 2009, 16:07
by mniemann
was passiert, wenn du alle Abfragen
If %ErrorLevel% == "3010" Then "RebootNeeded" EndIf
auskommentierst? Schließlich prüfst du ja nie auf den ErrorLevel als Abbruchkriterium. Das passiert nur in den "unattended"-Setup.infs

Posted: 16. Jul 2009, 16:10
by madmaki
naja, das wäre dann der ursprüngliche zustand des pakets / setup.inf, weswegen ich angefangen habe, nach einer lösung zu suchen. die If %ErrorLevel% - Abfrage wird doch aber auch für msi-pakete angeben !?!

Posted: 16. Jul 2009, 17:07
by mniemann
nein, eine IF %ErrorLevel% <> "0" geb es noch nie in MSI-Empirumpaketen.

Posted: 17. Jul 2009, 08:40
by Julia
Hallo madmaki,

mal eine etwas andere Frage zu deinem Problem.
Bist du dir sicher, dass die If-Abfrage (DoesRegKeyExist...) so richtig ist? Du prüfst ja auf einen bestimmten Reg-Key, ob die Installation erfolgreich war. Wenn der nicht genau so existiert, sieht Empirum die Installation als fehlgeschlagen.

Gruß Julia

Posted: 17. Jul 2009, 09:36
by madmaki
@mniemann
das steht doch aber dort genauso !?!
http://www.diew.eu/2009/06/24/der-richt ... rror-3010/

ich habe ein paar echo %computername% eingebaut, um zu sehen ob ob die if-error-abfrage zieht. und das tut sie. nur der "setreboot 1" befehl wird ignoriert.

...

[InstallMSI]
AddMeter 50
Call MsiExec /I "%SRC%\AcroPro.msi" TRANSFORMS="%SRC%\AcroPro.mst" /update "%src%\AcroProStdUpd910_T1T2_incr.msp" REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qr /Li "%MSILogFile%"
echo %ComputerName%1
If %ErrorLevel% == "3010" Then "RebootNeeded" EndIf
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-0000-000000000004},UnInstallString") == "0" Then "AbortMSIInst" EndIf
Del "%MSILogFile%"

[Set:Uninstall]
-Del "%MSILogFile%"
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-0000-000000000004},UnInstallString") == "1" Then "AbortMSIUnInst" EndIf
If %ErrorLevel% == "3010" Then "RebootNeeded" EndIf
-Call MsiExec /X {AC76BA86-1033-0000-0000-000000000004} REBOOT=REALLYSUPPRESS /qr /Li "%MSILogFile%"
-AddMeter 50

[RebootNeeded]
echo %ComputerName%2
SetReboot 1
echo %ComputerName%3

...

@julia
überprüfe ich später. danke für den hinweis

Posted: 17. Jul 2009, 09:37
by tgrosch
Julia: Das ist aber doch eine "ganz normale" Abfrage, die der PackageWizard bei MSI-Paketen macht, oder bin ich jetzt irr?

Posted: 17. Jul 2009, 10:11
by Julia
Nein, bist du nicht ;)
Die Abfrage an sich ist schon richtig so. Die Frage war ja nur, ob der Pfad auch so richtig ist.
Ich hatte vorhin mal kurz in mein Acrobat Paket gesehen und da steht eine diese MSI-ID: {AC76BA86-1033-F400-7760-000000000004}
anstatt wie bei madmaki diese: {AC76BA86-1033-0000-0000-000000000004}
Das könnte schon ein Fehler sein, wenn der gesuchte Key nicht exstiert, weil er woanders angelegt wurde.

Posted: 17. Jul 2009, 10:26
by madmaki
@Julia:
DAAAAAANNKEEEE, die msi-id-geschichte wars !!!! habe den wald vor bäumen nicht mehr gesehen. das wochenende ist gerettet :-)

allen anderen auch vielen dank für die antworten !!!

viele grüße
madmaki