Update Paket im Loop

Post Reply
caputo
Posts: 63
Joined: 28. Jul 2010, 16:08
Contact:

Update Paket im Loop

Post by caputo » 28. Jan 2020, 16:56

Hallo Forum,

ich würde mich über Hinweise freuen, die helfen folgendes Problem zu beheben.

Ich habe den Owncloud Client 2.4.2 via "exe /S" paketiert und auf verschiedenen Rechnern sauber installieren lassen.
Nun möchte ich die aktuelle Version 2.6.0 ausrollen.
Habe hierfür die msi paketiert:

Code: Select all

Call MsiExec /I "%SRC%\ownCloud-2.6.0.13018.12690.msi"   REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /q /Li "%MSILogFile%"
Die SID der If Abfrage musste ich anpassen, da nach der Installation der Uninstall Key unter einer anderen SID in der Registry abgelegt war.
Die Platform ist bei beiden Paketen x86. Wobei die MSI nur für x64 ist. Das 2.4.2 Paket allerdings bereits als x86 installiert war.
ASKUNINSTALLOLD=0, da bei 1 die Meldung kam, der Uninstaller würde bereits laufen.

Nun habe ich das Update mit dem Package Editor sauber installieren können. Auch Test auf mehreren Rechnern liefen sauber durch.

Nach der Freigabe für alle Rechner verhalten sich einige Computer so, dass Sie einen Reboot verlangen und nach diesem das Paket im Loop immer wieder installieren. Wodurch kann der Loop enstanden sein? Wie kann ich ihn unterbinden?

Vielen Dank für Eure Tipps!

MaMa82
Posts: 344
Joined: 10. Jun 2011, 13:56
Contact:

Re: Update Paket im Loop

Post by MaMa82 » 29. Jan 2020, 08:32

Moin Moin!

Klassischer Weise passieren Loops, wenn das Empirum Paket als solches bspw. nicht vollständig installiert werden kann (das Skript also vor der letzten Sektion abbricht).

Desweiteren lohnt sich einmal die Kontrolle der CommandLineOptions. Manchmal wird beim Import des Pakets in der EMC noch ein unnötiges /AW in der Befehlszeile (und somit in der DB) eingefügt.

Da Du nur einen Schnipsel aus dem Skript gepostet hast, ist hier eine fundierte Aussage nicht möglich - es handelt sich hier eher um das Glaskugelprinzip. ;)

Und AskUninstallOld bezieht sich auf das (autmatische) Entfernen älterer Empirum Paket Versionen (und der älteren Software, sofern der Uninstall-Mechanismus des alten Pakets funktioniert).
Grüße MaMa82


PS: EDV steht nicht für "Elektronische Datenverarbeitung", sondern vielmehr für "ENDE DER VERNUNFT"! :roll:

caputo
Posts: 63
Joined: 28. Jul 2010, 16:08
Contact:

Re: Update Paket im Loop

Post by caputo » 29. Jan 2020, 09:53

Vielen Dank, dass Du Dir die Zeit für mein Problem genommen hast!
Die Software an sich ist installiert und funktioniert. Nur eben der Loop nach Neustart des Client.

Mein Skript für die 2.4.2 sieht so aus:

Code: Select all

[SetupInfo]
Author                  =
CreationDate            =23.07.2018 12:38:31
InventoryID             =
Description             =
Method                  =
Tested on               =
Dependencies            =
Command line options    =/S2
Last Change             =
Build                   =

[VarDefInfo]
; <Variable>, <Type: 0=Computer 1=User>, <Allow NULL values: 0=No 1=Yes>

[Setup]
Version=14.2
ShowCaption=1
BlockInput=0
Platform=x86

[Requirements]

[Application]
ProductName=Owncloud Client
DeveloperName=Owncloud
Version=2.4.2.10040
Revision=0
SetupName=%ProductName% %Version% %SetupWizard%
Text1="%ProductName% %Version%",         Arial,           30, , 2170F3, 4,    , LEFT BOLD ITALIC
Text2="%DeveloperName%",                 Arial,           24, , 2170F3, 4,    , LEFT BOLD ITALIC
Text8="%Company%",                       Arial,           18, , 2170F3, 4,  10, RIGHT BOLD ITALIC
Text9="%InstallationFor% %WindowsUser%", Arial,           16, , 2170F3, 4, -18, BOTTOM ITALIC LEFT
BackgroundColor=EFEFEF,000000
CopyDialogRect=0%, 0%, 100%, 100%, HCENTER VCENTER

; Register all installations in common registry key
UserKeyName=$Matrix42Packages$\%DeveloperName%\%ProductName%
MachineKeyName=$Matrix42Packages$\%DeveloperName%\%ProductName%\%Version%
UninstallKeyName=Matrix42 - %DeveloperName% %ProductName% %Version%
UninstallDisplayName=Matrix42 - %DeveloperName% %ProductName% %Version%
UninstallString=%ReinstallString% /U
ReinstallString="%CommonSetupDir%\Setup.exe" "%App%\%SetupInfDir%\Setup.inf"
;UninstallDisplayIcon="%ApplicationDir%\%SetupInfDir%\Setup.ico",0
UninstallOptions=NOREMOVE NOREPAIR NOMODIFY
ReinstallMode=1
SrcDir=..

; Matrix42 Scripts are copied in a common scripts directory
ApplicationDir=%CommonAppData%\$Matrix42Scripts$\%DeveloperName%\%ProductName%\%Version%

SetupInfDir=Install
DataDir=%Personal%
AskUninstallOld=0
ShellLinks=1
CommonShellLinks=1
CreateUnresolvableShellLinks=1
UseStringSection=Strings:09
UseSysStringSection=SysStrings:09
DateWarning=1
SizeWarning=0
Reboot=0
PreventExternalReboot=1
StartServicesOnReboot=0
CallTimeOut=3600
AbortAfterCallTimeOut=1
DisableCancelButton=1
ShowEndMessage=1
EndMessage=%EndMessageDesc%

[Strings:07]
Disk1=Installationsmedium 1
EndMessageDesc=Die Installation wurde erfolgreich abgeschlossen!
ErrorLogMessage=Die Installation/Deinstallation wurde mit einer Fehlermeldung abgebrochen!
InstallationFor=Installation für:
InstallerDesc=Dienstprogramm zum Installieren einzelner Komponenten.
InstallerName=Installationsprogramm
SetupWizard=Installations-Assistent
Uninstallation=deinstallieren
ErrorText=Fehler
CallingText=beim Aufruf von

[Strings:09]
Disk1=Installation media 1
EndMessageDesc=Installation was completed successfully!
ErrorLogMessage=The installation/uninstallation aborted with an error message!
InstallationFor=Installation for:
InstallerDesc=Service program to install single components.
InstallerName=Setup program
SetupWizard=Installation Wizard
Uninstallation=Uninstallation
ErrorText=Error
CallingText=launching

[SysStrings:07]
Users=Benutzer

[SysStrings:09]
Users=Users

[Environment]
CommonSetupDir=%CommonFilesDir%\Setup%SetupBits%
V_MachineValuesPath=\\%EmpirumServer%\Values$\MachineValues\%DomainName%
V_UserValuesPath=%HKLM,"Software\matrix42\Software Depot","HomeServer"%\Values$\UserValues\%UserDomain%

; Maschinenabhängige Variablen
; machine dependent variables
;VM_<Variable>=%%%V_MachineValuesPath%\%ComputerName%.ini,%ComputerName%,<Variable>%%

; Userabhängige Variablen
; user dependent variables
;VU_<Variable>=%%%V_UserValuesPath%\%WindowsUser%.ini,%WindowsUser%,<Variable>%%

; !!! Setzen der entsprechenden ReplaceEnv Befehle für die Variablen im Abschnitt [Product] nicht vergessen!!!
; !!! Don't forget to set the appropriate ReplaceEnv instructions for the variables in the section [Product]!!!

[Encryption]

[Disks]
1=%Disk1%

[Options]
Installer = %InstallerName%, COPYALWAYS, Installer, "%InstallerDesc%"
Product   = %ProductName%,   COPYALWAYS, Product,   "%ProductDesc%"

[Installer]
1:..\..\..\..\User\Setup.exe,          %CommonSetupDir%, OPTIONAL USEFILENAME DIRECTORY NOSIZEWARNING SETUP, 0
1:..\..\..\..\User\SetupDeu.chm,       %CommonSetupDir%, OPTIONAL USEFILENAME DIRECTORY NOSIZEWARNING SETUP, 0
1:..\..\..\..\User\SetupEnu.chm,       %CommonSetupDir%, OPTIONAL USEFILENAME DIRECTORY NOSIZEWARNING SETUP, 0
1:%Temp%\Setup64.exe,                  %CommonSetupDir%\Setup.exe, OPTIONAL ALWAYS NOSIZEWARNING SETUP WINDOWS64,     0
1:..\..\..\..\User\Setup64.exe,        %CommonSetupDir%\Setup.exe, OPTIONAL ALWAYS NOSIZEWARNING SETUP WINDOWS64,     0
1:%SetupInfDir%\Setup.inf,                             , NORMAL,                                             0
; 1:%SetupInfDir%\Setup.ico,                             , NORMAL,                                           0
; 1:%SetupInfDir%\Logo.bmp,                              , NORMAL,                                           0

[Product]
; ReplaceEnv <Variable>

#Set:Product
#Set:Installation, DONTDELETE
#Set:Deinstallation, DELETE
#Reg:OnUninstallProduct, DELETE
#Reg:Product
#Ini:Product
#Security:Product

[Set:Product]

[Set:Installation]
AddMeter -1
Call "%Src%\ownCloud-2.4.2.10040-setup.exe" /S
Del "C:\Users\Public\Desktop\ownCloud.lnk" /F
If "%ErrorLevel%" <> "0" Then "SET:InstallationError" EndIf

[Set:Deinstallation]
If "%ErrorLevel%" <> "0" Then "SET:DeInstallationError" EndIf
-Call "C:\Program Files (x86)\ownCloud\uninstall.exe" /S 
-AddMeter -1

[Reg:OnUninstallProduct]

[Reg:Product]
HKLM,"SOFTWARE\WOW6432Node\Policies\ownCloud\ownCloud","SkipUpdateCheck",0x00010001,"0x00000001"
HKLM,"SOFTWARE\WOW6432Node\ownCloud\ownCloud","skipUpdateCheck",0x00010001,"0x00000001"

[Ini:Product]

[Security:Product]

[Shell:Product]

[Set:InstallationError]
ErrorLogMsg %ErrorText% %ErrorLevel% %CallingText% ownCloud-2.4.2.10040-setup.exe
Abort

[Set:DeInstallationError]
-Abort
-ErrorLogMsg %ErrorText% %ErrorLevel% %CallingText% ownCloud-2.4.2.10040-setup.exe
Das komplette Skript für die 2.6.0:

Code: Select all

[SetupInfo]
Author                  =
CreationDate            =27.01.2020 11:45:28 
InventoryID             = 
Description             = 
Method                  = MSI
Tested on               = 
Dependencies            = 
Command line options    =/S2
Last Change             = 
Build                   = 

[VarDefInfo]
; <Variable>, <Type: 0=Computer 1=User>, <Allow NULL values: 0=No 1=Yes>

[Setup]
Version=14.2
ShowCaption=1
BlockInput=0
Platform=x86

[Requirements]

[Application]
ProductName=Owncloud Client
DeveloperName=Owncloud
Version=2.6.0.12644
Revision=0
SetupName=%ProductName% %Version% %SetupWizard%
Text1="%ProductName% %Version%",         Arial,           30, , 2170F3, 4,    , LEFT BOLD ITALIC
Text2="%DeveloperName%",                 Arial,           24, , 2170F3, 4,    , LEFT BOLD ITALIC
Text8="%Company%",                       Arial,           18, , 2170F3, 4,  10, RIGHT BOLD ITALIC
Text9="%InstallationFor% %WindowsUser%", Arial,           16, , 2170F3, 4, -18, BOTTOM ITALIC LEFT
BackgroundColor=EFEFEF,000000
CopyDialogRect=0%, 77%, 100%, 100%, HCENTER

; Register all installations in common registry key
UserKeyName=$Matrix42Packages$\%DeveloperName%\%ProductName%
MachineKeyName=$Matrix42Packages$\%DeveloperName%\%ProductName%\%Version%
UninstallKeyName=Matrix42 - %DeveloperName% %ProductName% %Version%
UninstallDisplayName=Matrix42 - %DeveloperName% %ProductName% %Version%
UninstallString=%ReinstallString% /U
ReinstallString="%CommonSetupDir%\Setup.exe" "%App%\%SetupInfDir%\Setup.inf"
;UninstallDisplayIcon="%ApplicationDir%\%SetupInfDir%\Setup.ico",0
UninstallOptions=NOREMOVE NOREPAIR NOMODIFY
ReinstallMode=1
SrcDir=..

; Matrix42 Scripts are copied in a common scripts directory
ApplicationDir=%CommonAppData%\$Matrix42Scripts$\%DeveloperName%\%ProductName%\%Version%

SetupInfDir=Install
DataDir=%Personal%
AskUninstallOld=0
ShellLinks=1
CommonShellLinks=1
CreateUnresolvableShellLinks=1
UseStringSection=Strings:09
UseSysStringSection=SysStrings:09
DateWarning=1
SizeWarning=0
Reboot=1
PreventExternalReboot=1
StartServicesOnReboot=0
CallTimeOut=3600
AbortAfterCallTimeOut=1
DisableCancelButton=1
ShowEndMessage=1
EndMessage=%EndMessageDesc%

[Strings:07]
Disk1=Installationsmedium 1
EndMessageDesc=Die Installation wurde erfolgreich abgeschlossen!
ErrorLogMessage=Die Installation/Deinstallation wurde mit einer Fehlermeldung abgebrochen!
InstallationFor=Installation für:
InstallerDesc=Dienstprogramm zum Installieren einzelner Komponenten.
InstallerName=Installationsprogramm
SetupWizard=Installations-Assistent
Uninstallation=deinstallieren

[Strings:09]
Disk1=Installation media 1
EndMessageDesc=Installation was completed successfully!
ErrorLogMessage=The installation/uninstallation aborted with an error message!
InstallationFor=Installation for:
InstallerDesc=Service program to install single components.
InstallerName=Setup program
SetupWizard=Installation Wizard
Uninstallation=Uninstallation

[SysStrings:07]
Users=Benutzer

[SysStrings:09]
Users=Users

[Environment]
V_MSIInstallerID=B53F53B08BEAF6545B57BCBBE8ACDDA0
ReInstSuccessMessage1031=Die Konfiguration wurde erfolgreich abgeschlossen.
ReInstSuccessMessage1031_1=Die Konfiguration wurde abgeschlossen.
ReInstSuccessMessage1033=Configuration completed successfully.
ReInstSuccessMessage1033_1=Configuration completed.
MSILogFile=%Temp%\MSI_%ProductName%.%Version%.%Revision%.log
CommonSetupDir=%CommonFilesDir%\Setup%SetupBits%
V_MachineValuesPath=\\%EmpirumServer%\Values$\MachineValues\%DomainName%
V_UserValuesPath=%HKLM,"Software\matrix42\Software Depot","HomeServer"%\Values$\UserValues\%UserDomain%

; Maschinenabhängige Variablen
; machine dependent variables
;VM_<Variable>=%%%V_MachineValuesPath%\%ComputerName%.ini,%ComputerName%,<Variable>%%

; Userabhängige Variablen
; user dependent variables
;VU_<Variable>=%%%V_UserValuesPath%\%WindowsUser%.ini,%WindowsUser%,<Variable>%%

; !!! Setzen der entsprechenden ReplaceEnv Befehle für die Variablen im Abschnitt [Product] nicht vergessen!!!
; !!! Don't forget to set the appropriate ReplaceEnv instructions for the variables in the section [Product]!!!

[Encryption]

[Disks]
1=%Disk1%

[Options]
Installer = %InstallerName%, COPYALWAYS, Installer, "%InstallerDesc%"
Product   = %ProductName%,   COPYALWAYS, Product,   "%ProductDesc%"

[Installer]
1:..\..\..\..\User\Setup.exe,          %CommonSetupDir%, OPTIONAL USEFILENAME DIRECTORY NOSIZEWARNING SETUP, 0
1:..\..\..\..\User\SetupDeu.chm,       %CommonSetupDir%, OPTIONAL USEFILENAME DIRECTORY NOSIZEWARNING SETUP, 0
1:..\..\..\..\User\SetupEnu.chm,       %CommonSetupDir%, OPTIONAL USEFILENAME DIRECTORY NOSIZEWARNING SETUP, 0
1:%Temp%\Setup64.exe,                  %CommonSetupDir%\Setup.exe, OPTIONAL ALWAYS NOSIZEWARNING SETUP WINDOWS64,     0
1:..\..\..\..\User\Setup64.exe,        %CommonSetupDir%\Setup.exe, OPTIONAL ALWAYS NOSIZEWARNING SETUP WINDOWS64,     0
1:%SetupInfDir%\Setup.inf,                             , ALWAYS,                                             0
; 1:%SetupInfDir%\Setup.ico,                             , NORMAL,                                           0
; 1:%SetupInfDir%\Logo.bmp,                              , NORMAL,                                           0

[Product]
; ReplaceEnv <Variable>

#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\{84FE3CE4-1E1F-4CE7-9606-4DD7BF0AE35D},UnInstallString") == "1" | DoesRegKeyExist ("HKLM,SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{84FE3CE4-1E1F-4CE7-9606-4DD7BF0AE35D},UnInstallString") == "1" Then "RepairMSI" Else "InstallMSI" EndIf

[RepairMSI]
AddMeter -1
Call MsiExec /Fvomus "%SRC%\ownCloud-2.6.0.13018.12690.msi"   REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /q /Li "%MSILogFile%"
If %ErrorLevel% == "3010" Then "RebootRequired" EndIf
If DoesTextInFileExist ("%ReInstSuccessMessage1031%", "%MSILogFile%") == "0" & DoesTextInFileExist ("%ReInstSuccessMessage1031_1%", "%MSILogFile%") == "0" & DoesTextInFileExist ("%ReInstSuccessMessage1033%", "%MSILogFile%") == "0" & DoesTextInFileExist ("%ReInstSuccessMessage1033_1%", "%MSILogFile%") == "0" Then "AbortMSIInst" EndIf
Del "%MSILogFile%"

[InstallMSI]
AddMeter -1
Call MsiExec /I "%SRC%\ownCloud-2.6.0.13018.12690.msi"   REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /q /Li "%MSILogFile%"
Del "C:\Users\Public\Desktop\ownCloud.lnk" /F
If %ErrorLevel% == "3010" Then "RebootRequired" EndIf
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{84FE3CE4-1E1F-4CE7-9606-4DD7BF0AE35D},UnInstallString") == "0" & DoesRegKeyExist ("HKLM,SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{84FE3CE4-1E1F-4CE7-9606-4DD7BF0AE35D},UnInstallString") == "0" Then "AbortMSIInst" EndIf
Del "%MSILogFile%"

[Set:Uninstall]
-Del "%MSILogFile%"
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{84FE3CE4-1E1F-4CE7-9606-4DD7BF0AE35D},UnInstallString") == "1" | DoesRegKeyExist ("HKLM,SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{84FE3CE4-1E1F-4CE7-9606-4DD7BF0AE35D},UnInstallString") == "1" Then "AbortMSIUnInst" EndIf
If %ErrorLevel% == "3010" Then "RebootRequired" EndIf
-Call MsiExec /X {84FE3CE4-1E1F-4CE7-9606-4DD7BF0AE35D} MSIRESTARTMANAGERCONTROL=Disable REBOOT=REALLYSUPPRESS /q /Li "%MSILogFile%"
-AddMeter -1

[RebootRequired]
SetReboot 1
-SetReboot 1

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

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

[SET:ChangeMSISourcelist]
ReplaceRegValue (HKCR,"Installer\Products\%V_MSIInstallerID%\Sourcelist","LastUsedSource","\\%EmpirumServer%","\\%%EmpirumServer%%", 1)
ReplaceRegValue (HKCR,"Installer\Products\%V_MSIInstallerID%\Sourcelist\Net","1","\\%EmpirumServer%","\\%%EmpirumServer%%", 1)

[Reg:OnUninstallProduct]

[Reg:Product]
HKLM,"SOFTWARE\WOW6432Node\Policies\ownCloud\ownCloud","SkipUpdateCheck",0x00010001,"0x00000001"
HKLM,"SOFTWARE\WOW6432Node\ownCloud\ownCloud","skipUpdateCheck",0x00010001,"0x00000001"

[Ini:Product]

[Security:Product]

[Shell:Product]

MaMa82
Posts: 344
Joined: 10. Jun 2011, 13:56
Contact:

Re: Update Paket im Loop

Post by MaMa82 » 29. Jan 2020, 10:27

Was sagt denn das SWDepot-Log der betroffenen Clients? (nach der Inst und vor dem Loop)
Grüße MaMa82


PS: EDV steht nicht für "Elektronische Datenverarbeitung", sondern vielmehr für "ENDE DER VERNUNFT"! :roll:

caputo
Posts: 63
Joined: 28. Jul 2010, 16:08
Contact:

Re: Update Paket im Loop

Post by caputo » 29. Jan 2020, 10:46

29.01.2020 07:00 Domain ClientX SYSTEM Agent Daily Status Daily Status Information eho-emp-1 (SMB)
29.01.2020 06:59 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Success
28.01.2020 15:42 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Reboot Pending
28.01.2020 15:42 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Running
28.01.2020 15:40 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Success
28.01.2020 15:06 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Reboot Pending
28.01.2020 15:06 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Running
28.01.2020 15:03 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Success
28.01.2020 15:00 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Reboot Pending
28.01.2020 14:59 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Running
28.01.2020 14:57 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Success
28.01.2020 14:54 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Reboot Pending
28.01.2020 14:54 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Running
28.01.2020 14:52 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Success
28.01.2020 14:47 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Reboot Pending
28.01.2020 14:47 Domain ClientX SYSTEM Cloud 2.6 2.6.0.12644 0 Update Running
28.01.2020 14:46 Domain ClientX Distribution Cloud 2.6 2.6.0.12644 0 Download Success Empirum (SMB)
28.01.2020 14:46 Domain ClientX Distribution Cloud 2.6 2.6.0.12644 0 Download Running Empirum (SMB)

marc.schneider
Posts: 224
Joined: 29. Mar 2010, 12:26
Location: Magdeburg
Contact:

Re: Update Paket im Loop

Post by marc.schneider » 29. Jan 2020, 13:12

Hallo caputo,

ich wäre ja der Meinung, dass die MSIID falsch ist. Habe das MSI gerade mal geladen und mit Orca aufgemacht. Dort steht die ID {0B35F35B-AEB8-456F-B575-CBBB8ECADD0A}
Hast du das Paket mal Step by Step mit dem Package Editor debugged?

Beste Grüße
Marc
--
Ärztekammer Sachsen-Anhalt
39120 Magdeburg
http://www.aeksa.de
--

caputo
Posts: 63
Joined: 28. Jul 2010, 16:08
Contact:

Re: Update Paket im Loop

Post by caputo » 29. Jan 2020, 14:29

Danke Marc für Deine Antwort.
Wie oben erwähnt, habe ich die SID im Skript an die angepaßt, die in der Registry nach der Installation angelegt wurde.
In der Registry findet sich nicht die {0B35F35B-AEB8-456F-B575-CBBB8ECADD0A} sondern die {84FE3CE4-1E1F-4CE7-9606-4DD7BF0AE35D}. Beim Step by Step Durchlauf brach das Skript beim Chekcen der RegKeys ab, weil der Key eben ein anderer ist. Da liegt wohl der Hase im Pfeffer!? Was kann ich hier tun? Das MSI Paket mit Orca anpassen und die SID austauschen? Geht das denn?

marc.schneider
Posts: 224
Joined: 29. Mar 2010, 12:26
Location: Magdeburg
Contact:

Re: Update Paket im Loop

Post by marc.schneider » 29. Jan 2020, 16:07

Hallo caputo,
mit Orca kannst Du die korrekte ID auslesen und dann einfach in der setup.inf mit suchen&ersetzen anpassen. Das klappt ;-)
Viel Erfolg
Marc
--
Ärztekammer Sachsen-Anhalt
39120 Magdeburg
http://www.aeksa.de
--

caputo
Posts: 63
Joined: 28. Jul 2010, 16:08
Contact:

Re: Update Paket im Loop

Post by caputo » 30. Jan 2020, 12:42

Danke Marc für Deine Antwort!

Ich erstelle das Skript via Package Wizard "MSI".
Hier erstellt mir der Wizard das Skript mit der {0B35F35B-AEB8-456F-B575-CBBB8ECADD0A}

Code: Select all

If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{0B35F35B-AEB8-456F-B575-CBBB8ECADD0A},UnInstallString") == "0" & DoesRegKeyExist ("HKLM,SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{0B35F35B-AEB8-456F-B575-CBBB8ECADD0A},UnInstallString") == "0" Then "AbortMSIInst" EndIf
In der Registry wird der Owncloud Client allerdings folgendermaßen angelegt:
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{84FE3CE4-1E1F-4CE7-9606-4DD7BF0AE35D}

Somit schlägt die Installation nach der If-Abfrage fehl. Daher habe ich die SID im Skript mit der in der Registry ersetzt, so dass das Skript nun logisch ist.
Allerdings tritt nun der Loop auf.

Es gibt keine andere SID die ich mit Orca auslesen könnte. In Orca finde ich unter Proberty - Product Code nur die "falsche" {0B35F35B-AEB8-456F-B575-CBBB8ECADD0A}.

Daher kann ich Deinen Lösungsvorschlag nichts anwenden. Oder stehe ich auf dem Schlauch?

MaMa82
Posts: 344
Joined: 10. Jun 2011, 13:56
Contact:

Re: Update Paket im Loop

Post by MaMa82 » 30. Jan 2020, 13:01

Herzlichen Glückwunsch,

dann hast Du sehr wahrscheinlich ein Produkt/Installer erwischt, der dynamische MSI GUIDs erzeugt.
Das habe ich nämlich auch schon mal gesehen. :D

Es gibt hier aber eine Empirum Skript-Interpreter interne Funktion um die passende MSIGUID direkt aus der Registry auszulesen. ;)
Siehe: GetUninstallKeyName :!: :wink:
Grüße MaMa82


PS: EDV steht nicht für "Elektronische Datenverarbeitung", sondern vielmehr für "ENDE DER VERNUNFT"! :roll:

marc.schneider
Posts: 224
Joined: 29. Mar 2010, 12:26
Location: Magdeburg
Contact:

Re: Update Paket im Loop

Post by marc.schneider » 30. Jan 2020, 13:56

Hallo MaMa82!
dann hast Du sehr wahrscheinlich ein Produkt/Installer erwischt, der dynamische MSI GUIDs erzeugt.
Das habe ich nämlich auch schon mal gesehen. :D
Ach Du Sch<piep>! Na toll, so etwas hatte ich glücklicher Weise noch nicht.

Danke für die Info
Marc
--
Ärztekammer Sachsen-Anhalt
39120 Magdeburg
http://www.aeksa.de
--

caputo
Posts: 63
Joined: 28. Jul 2010, 16:08
Contact:

Re: Update Paket im Loop

Post by caputo » 30. Jan 2020, 14:51

Danke Jungs für Eure Zeit.
Ich werd versuchen mich schlau zu machen und das ggf für die Nachwelt hier posten.

Post Reply

Return to “Paketierung”

Who is online

Users browsing this forum: Ahrefs [Bot] and 2 guests