Status "Verfügbar" obwohl SW installiert ist

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

Status "Verfügbar" obwohl SW installiert ist

Post by caputo » 10. May 2011, 10:20

Hallo Forum,

ich bin grade dabei Autodesk Design Review 2012 zu paketieren.
Habe das ganze über den Wizard via MSI erledigt. Zusätzlich habe ich einige Schalter hinzugefügt (Updates, Desktopicons, ect).
Nun steht das Paket bei mir im SW-Depot und läßt sich problemlos installieren. Allerdings ändert sich der Status nicht auf "Installiert" sondern verweilt bei "Verfügbar".
Sicher ist das nur ne Kleinigkeit, aber ich komme nicht drauf, an welchem Rädchen ich drehen muss.
Also konkret: Was muss am Skript geändert werden, dass die installierte SW auch als solche erkannt wird.
Danke im Voraus.


[SetupInfo]
Author =Installer
CreationDate =10.05.2011 09:59:15
InventoryID =
Description =
Method = MSI
Tested on =
Dependencies =
Command line options =/S1
Last Change =
Build =

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

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

[Requirements]

[Application]
ProductName=Design Review
DeveloperName=Autodesk
Version=2012
Revision=0
SetupName=%ProductName% %Version% %SetupWizard%
Text1="%ProductName% %Version%", Arial, 30, , 00FFFF, 4, , LEFT BOLD ITALIC
Text2="%DeveloperName%", Arial, 24, , 00FFFF, 4, , LEFT BOLD ITALIC
Text8="%Company%", Arial, 18, , 00FFFF, 4, 10, RIGHT BOLD ITALIC
Text9="%InstallationFor% %WindowsUser%", Arial, 16, , 007F00, 4, -18, BOTTOM ITALIC LEFT
BackgroundColor=FF0000,000000
CopyDialogRect=0%, 77%, 100%, 100%, HCENTER
UserKeyName=%DeveloperName%\%ProductName%
MachineKeyName=%DeveloperName%\%ProductName%\%Version%
UninstallKeyName=%DeveloperName% %ProductName% %Version%
UninstallDisplayName=%ProductName% %Version%
UninstallString=%ReinstallString% /U
ReinstallString="%CommonSetupDir%\Setup.exe" "%App%\%SetupInfDir%\Setup.inf"
ReinstallMode=1
SrcDir=..
ApplicationDir=%ProgramFilesDir%\%ProductName%
SetupInfDir=Install
AskUninstallOld=1
ShellLinks=1
CommonShellLinks=1
CreateUnresolvableShellLinks=1
UseStringSection=Strings:09
UseSysStringSection=SysStrings:09
DateWarning=1
SizeWarning=1
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

[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=EBCDB94AE0956A34BA77C7044E997B1C
ReInstSuccessMessage1031=Die Konfiguration wurde erfolgreich abgeschlossen.
ReInstSuccessMessage1033=Configuration completed successfully.
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:..\..\..\..\User\Mx42SynSem.dll, %System%, OPTIONAL USEFILENAME DIRECTORY NOSIZEWARNING SETUP WINDOWS32, 0
1:..\..\..\..\User\x64\Mx42SynSem.dll, %System%, OPTIONAL USEFILENAME DIRECTORY NOSIZEWARNING SETUP WINDOWS64, 0
1:%SetupInfDir%\Setup.inf, , NORMAL, 0
1:%Temp%\Setup64.exe, %CommonSetupDir%\Setup.exe, OPTIONAL NOSIZEWARNING SETUP ALWAYS WINDOWS64, 0

[FileCheckMachine]
ReplaceEnv V_MachineValuesPath
If DoesFileExist ("%V_MachineValuesPath%\%ComputerName%.ini") == "0" Then "FileIsntThere" EndIf

[FileCheckClient]
ReplaceEnv V_UserValuesPath
If "%UserDomain%" <> "%ComputerName%" Then "CheckClientFile" EndIf

[CheckClientFile]
If DoesFileExist ("%V_UserValuesPath%\%WindowsUser%.ini") == "0" Then "FileIsntThere" EndIf

[FileIsntThere]
ErrorLogMsg Values$\MachineValues\%DomainName%\%ComputerName%.ini or Values$\UserValues\%UserDomain%\%WindowsUser%.ini not found!
Abort

[Product]
;#FileCheckMachine, MACHINE
;#FileCheckClient, CLIENT
;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\{A49BDCBE-590E-43A6-AB77-7C40E499B7C1},UnInstallString") == "1" | DoesRegKeyExist ("HKLM,SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{A49BDCBE-590E-43A6-AB77-7C40E499B7C1},UnInstallString") == "1" Then "RepairMSI" Else "InstallMSI" EndIf

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

[InstallMSI]
AddMeter -1
Call MsiExec /I "%SRC%\SetupDesignReview2012.msi" ADR_DONOTSHOWAGAIN="1" ADR_NEXT_INITIAL_CHECK="1" ADSK_DESKTOPSHORTCUT_1="0" ALLUSERS="1" COMPANYNAME="Kinetics Germany GmbH" ISCHECKFORPRODUCTUPDATES="0" PREFERENCELOCKED="1" REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qn /Li "%MSILogFile%"
If %ErrorLevel% == "3010" Then "RebootRequired" EndIf
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{A49BDCBE-590E-43A6-AB77-7C40E499B7C1},UnInstallString") == "0" & DoesRegKeyExist ("HKLM,SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{A49BDCBE-590E-43A6-AB77-7C40E499B7C1},UnInstallString") == "0" Then "AbortMSIInst" EndIf
Del "%MSILogFile%"

[Set:Uninstall]
-Del "%MSILogFile%"
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{A49BDCBE-590E-43A6-AB77-7C40E499B7C1},UnInstallString") == "1" | DoesRegKeyExist ("HKLM,SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{A49BDCBE-590E-43A6-AB77-7C40E499B7C1},UnInstallString") == "1" Then "AbortMSIUnInst" EndIf
If %ErrorLevel% == "3010" Then "RebootRequired" EndIf
-Call MsiExec /X {A49BDCBE-590E-43A6-AB77-7C40E499B7C1} REBOOT=REALLYSUPPRESS /qn /Li "%MSILogFile%"
-AddMeter -1

[RebootRequired]
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]

[Ini:Product]

[Security:Product]

[Shell:Product]

User avatar
Hendrik_Ambrosius
Moderator
Moderator
Posts: 7965
Joined: 13. Dec 2004, 23:10
Location: Adendorf/Lüneburg

Re: Status "Verfügbar" obwohl SW installiert ist

Post by Hendrik_Ambrosius » 10. May 2011, 14:09

Was steht im SetupErrorLog?
Hendrik Ambrosius / Senior Presales Consultant
Mobile: +49 172 408 4447 | hendrik.ambrosius@matrix42.com
Matrix42 GmbH | Elbinger Straße 7 | 60487 Frankfurt am Main | Germany | www.matrix42.com

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 or of the support team.

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

Re: Status "Verfügbar" obwohl SW installiert ist

Post by caputo » 10. May 2011, 16:40

SetupErrorLog:

Date/Time : 10.05.2011 16:37:25
ProductName: Design Review
Version : 2012
Revision : 0
SetupInf : C:\EmpirumAgent\Packages\Autodesk\Design Review\2012\Install\Setup.inf
------------
ErrorLogMsg: Die Installation/Deinstallation wurde mit einer Fehlermeldung abgebrochen! ErrorLevel: 0

User avatar
thahn
Posts: 487
Joined: 03. Jan 2007, 09:03
Location: KR - NRW
Contact:

Re: Status "Verfügbar" obwohl SW installiert ist

Post by thahn » 10. May 2011, 22:34

Hi,

das Problem wie bei vielen anderen SoftwareProdukten, legt die MSI - Routine keinen UninstallString an, das muss man immer nachher überprüfen. Leider kann man nicht zwingend darauf vertrauen, das Software-Hersteller sich immer an MSI-Standards halten :roll:
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{A49BDCBE-590E-43A6-AB77-7C40E499B7C1},UnInstallString") == "0" & DoesRegKeyExist ("HKLM,SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{A49BDCBE-590E-43A6-AB77-7C40E499B7C1},UnInstallString") == "0" Then "AbortMSIInst" EndIf
also das ",UninstallString" löschen dann passt das, aber auch in den anderen Sections löschen, sonst wird nie das Product repariert ;-)

anbei ein Screenshot zur Verdeutlichung.

http://www.thom-hahn.de/matrix42/autodesk_DR2012.PNG

cYa
Thomas Hahn
Technical Account Manager

Matrix42 AG

Email: thomas.hahn[at]matrix42.com
http://www.matrix42.de
Skype: thahn42
ICQ: IO25IGO8

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of matrix42 AG.

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

Re: Status "Verfügbar" obwohl SW installiert ist

Post by caputo » 11. May 2011, 07:59

Herr Hahn,

Perfekt!
Danke!
Gruß!

Post Reply

Return to “Paketierung”

Who is online

Users browsing this forum: No registered users and 5 guests