Ganttproject update

segro
Beiträge: 62
Registriert: 28 Nov 2010, 11:46

Ganttproject update

Beitragvon segro » 12 Dez 2012, 17:48

Hallo zusammen,

ich kämpfe schon eine Weile mit einem Skript um ganttproject von 2.0.10 auf 2.5 bzw. 2.6 zu aktualisieren. Hauptproblem was ich hab ist der wechselnde Programmordner der Versionen. dh. Version 2.0 wurde nach C:\Programme\GantProject installiert, die neueren Versionen nach GanttProject-2.6 bzw. 2.5.
Deshalb die for schleife.

Leider findet der winst mein Winbach_uninstall_32 bzw. _64 dann nicht mehr (ich weiß, dass das in sub_ Probleme macht) aber egal ob ich die Winbatch_ in das delsub.ins oder in das uninstall.ins reinschreibe, bekomme ich die Fehlermeldung:
[5] [Dez 12 17:39:13:312] Warning: The section "Winbatch_uninstall_64" (called in line 4 of the calling section) does not exist or is empty
[5] [Dez 12 17:39:13:312]
[4] [Dez 12 17:39:13:312] Warning: Section "Winbatch_uninstall_64" does not exist or is empty

hat jemand da noch nen tip für mich? ich stell dann auch das ganze Skript ins Wiki wenn es läuft ,-)

Code: Alles auswählen

DefStringlist $Versionen$

Set $Versionen$ = createStringlist('GanttProject-2.6','GanttProject-2.5','GanttProject')
comment "collect known Versions of the product"
; set $Versionen$ = addtolist($Versionen$,'2.6')


   if (($INST_SystemType$ = "x86 System") and ($INST_architecture$ = "system specific")) or ($INST_architecture$ = "both") or ($INST_architecture$ = "32 only")
      Message "Uninstalling " + $ProductId$ + " 32 Bit..."

      for %Vers% in $Versionen$ do sub_check32
   endif

   if ($INST_SystemType$ = "64 Bit System") and (($INST_architecture$ = "system specific") or ($INST_architecture$ = "both") or ($INST_architecture$ = "64 only"))
      Message "Uninstalling " + $ProductId$ + " 64 Bit..."
      for %Vers% in $Versionen$ do sub_check
   endif

comment "Delete program shortcuts"
 LinkFolder_uninstall

[sub_check32]
Set $UninstallProgram32$ = "%ProgramFilesSysnativeDir%" + "\%Vers%" + "\uninstall.exe"
      
      if FileExists($UninstallProgram32$)
         comment "Version %Vers% gefunden " found in registry, starting msiexec to uninstall"
         Message "Found "+$ProductId$+"%Vers% => uninstalling first"
         Winbatch_uninstall_32
         sub_check_exitcode

      endif

[sub_check]
Set $UninstallProgram64$ = "%ProgramFiles32Dir%" + "\%Vers%" + "\uninstall.exe"
      if FileExists($UninstallProgram64$)
         comment "Uninstall program found, starting uninstall"
         Winbatch_uninstall_64
         sub_check_exitcode
      endif

[Winbatch_uninstall_32]
"$UninstallProgram32$" /S

[Winbatch_uninstall_64]
"$UninstallProgram64$" /S

Benutzeravatar
koepkek
uib-Team
Beiträge: 227
Registriert: 11 Jan 2012, 11:27

Re: Ganttproject update

Beitragvon koepkek » 14 Dez 2012, 14:10

Hi

ich würde mal behaupten, das er unter dem ermittelten Pfad keine 64-Bit Programm finden kann:

Set $UninstallProgram64$ = "%ProgramFiles32Dir%" + "\%Vers%" + "\uninstall.exe"

Gruß Karsten Köpke
opsi support - uib gmbh
For productive opsi installations we recommend support contracts.
http://uib.de
http://opsi.org

segro
Beiträge: 62
Registriert: 28 Nov 2010, 11:46

Re: Ganttproject update

Beitragvon segro » 18 Dez 2012, 09:44

Hallo Herr Köpke,
doch, der Pfad ist korrekt und wird gefunden (ganttproject installiert bei 64bit system unter Programfiles (x86) wobei mir die Variable auch nicht passte..)

die Sektion winbatch_uninstall_64 wird danach nicht gefunden, egal ob ich Sie in in das delsub.ins oder uninstall.ins schreibe.

Code: Alles auswählen

Set  $UninstallProgram64$ = "C:\Program Files (x86)" + "\GanttProject-2.6" + "\uninstall.exe"
[6] [Dez 12 17:39:13:311]           The value of the variable "$UninstallProgram64$" is now: "C:\Program Files (x86)\GanttProject-2.6\uninstall.exe"
[5] [Dez 12 17:39:13:311]         
[5] [Dez 12 17:39:13:311]         If
[6] [Dez 12 17:39:13:312]           Starting query if file exist ...
[5] [Dez 12 17:39:13:312]     FileExists($UninstallProgram64$)   <<< result true
[5] [Dez 12 17:39:13:312]       Then
[5] [Dez 12 17:39:13:312]         comment: Uninstall program found, starting uninstall
[5] [Dez 12 17:39:13:312]         
[5] [Dez 12 17:39:13:312]         Warning: The section "Winbatch_uninstall_64" (called in line 4 of the calling section) does not exist or is empty
[5] [Dez 12 17:39:13:312]         
[4] [Dez 12 17:39:13:312]         Warning: Section  "Winbatch_uninstall_64"  does not exist or is empty

Benutzeravatar
d.oertel
uib-Team
Beiträge: 3269
Registriert: 04 Jun 2008, 14:27

Re: Ganttproject update

Beitragvon d.oertel » 18 Dez 2012, 11:51

Hi..

ich vermute, das das scriptfragment aus der delsub kommt.
Diese wird ja auch von der setup.ins aufgerufen.
Es könnte also helfen die Sektion auch in der setup.ins aufzunehmen.

Hilft das ?

gruß
d.oertel
opsi support - uib gmbh

For productive opsi installations we recommend support contracts.
http://www.uib.de
http://www.opsi.org

segro
Beiträge: 62
Registriert: 28 Nov 2010, 11:46

Re: Ganttproject update

Beitragvon segro » 18 Dez 2012, 12:17

Hallo Herr Oertel,

vielen Dank! wenn die beiden Zeilen auch noch in der setup.ins stehen, funktioniert es! super, danke...

Code: Alles auswählen

[Winbatch_uninstall_32]
"$UninstallProgram32$" /S

[Winbatch_uninstall_64]
"$UninstallProgram64$" /S