Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   InnoSetup: Programmverzeichnis falsch (https://www.delphipraxis.net/23594-innosetup-programmverzeichnis-falsch.html)

FBrust 5. Jun 2004 21:41


InnoSetup: Programmverzeichnis falsch
 
Hallo,

ich versuche gerade mit InnoSetup 4.2.4 eine Setup-Datei für mein Programm zu erstellen. Leider wird das Installationsverzeichnis nicht korrekt ermittelt. Im Skript steht:

Code:
[Setup]
AppName=QualiCo
AppVerName=QualiCo 1.4.16 - Update Build 101
DefaultDirName="{pf}\CES"
DisableDirPage=no
Laut dem (sehr guten :thuimb:) Tutorial von Matthias Simmack sollte nun die {app}-Variable auf "C:\Programme\CES" stehen. Leider steht sie auf "C:\Programme\QualiCo", was aber falsch ist. Offensichtlich wird die Bezeichnung hinter AppName für das Programmverzeichnis herangezogen.

Hat vielleicht jemand einen Tip, wie ich die {app}-Variable auf "C:\Programme\CES" kriege?

Gruß
Frank

MrKnogge 5. Jun 2004 22:38

Re: InnoSetup: Programmverzeichnis falsch
 
Hallo,

ich hab dieses Problem nicht, konnte dein Problem aber "erzeugen".

Wäre es möglich, dass du dein Programm mit einem Script installiert hast, das Script anschliesend modifiziert wurde und du es wieder (ohne vorige deinstallation) installiert hast ?

Falls ja, liegt der Fall auf der Hand. Windows "merkt" sich den Programm-Pfad für dein Programm und deswegen wird automatisch der bisherige Pfad angezeigt.

Zusätzlich empfehle ich noch deinem Setup durch:

[Setup]
AppId=Eine_eindeutige_ID

deinem Setupeine eindeutige ID zu geben.

Christian Seehase 5. Jun 2004 22:43

Re: InnoSetup: Programmverzeichnis falsch
 
Moin Zusammen,

noch ein Tip zur AppID:

In der Delphi IDE lässt sich mittels STRG-SHIFT-G eine GUID erzeugen.
Die wäre dafür wohl allerbest geeignet.

MrKnogge 5. Jun 2004 22:48

Re: InnoSetup: Programmverzeichnis falsch
 
:gruebel:

aber was bringt die dem Setup ?
durch AppID wird doch erreicht, dass die mehrfache Installtion eines Programmes dennoch nur einmal registriert wird, oder hab ich da was falsch verstanden ?

FBrust 5. Jun 2004 22:55

Re: InnoSetup: Programmverzeichnis falsch
 
Hallo,

das mit dem "schonmal installiert gewesen", das wars, danke :hello:

Was die AppID betrifft: Das Update stand auch schon zweimal mit der gleichen Bezeichnung in der Softwareliste in der Systemsteuerung.
Es wäre schon sinnvoll, wenn das Programm nur einmal in der SoftwareListe auftaucht. So wie das Setup jetzt aufgebaut ist, steht halt immer der AppVerName in der Softwareliste, was natürlich bei einer Deinstallation nach 20 Updates in die Hose geht.

Gibts diese GUID eigentlich auch unter D5 Pro? Damit arbeite ich nämlich momentan...


Gruß

Frank

FBrust 5. Jun 2004 22:58

Re: InnoSetup: Programmverzeichnis falsch
 
Hallo,

hab das mit der GUID hinbekommen, war wohl im falschen Fenster...:roll:


Gruß
frank

MathiasSimmack 6. Jun 2004 07:32

Re: InnoSetup: Programmverzeichnis falsch
 
Zitat:

Zitat von MrKnogge
aber was bringt die dem Setup ?
durch AppID wird doch erreicht, dass die mehrfache Installtion eines Programmes dennoch nur einmal registriert wird, oder hab ich da was falsch verstanden ?

Die "AppId" sorgt dafür, dass das Programm in der Registry (Uninstall) immer den gleichen Schlüssel benutzt. Im Fall von FBrust würde ohne "AppId" der Schlüssel
Code:
QualiCo_is1
lauten. Solange sich dieser Name, "QualiCo", nicht ändert, ist es kein Problem. Anders sieht es aus, wenn jemand die Versionsnummer mit einbaut, bspw.
Code:
[Setup]
AppName=Mein Programm 1.1
dann würde der Schlüssel in der Registry natürlich
Code:
Mein Programm 1.1_is1
lauten. Bei einer evtl. neuen Version 1.2 dann eben
Code:
Mein Programm 1.2_is1
usw. Oder wenn sich der Name an sich mal ändert, bspw. von "Mein Programm" nach "Mein Programm Professional Edition", o.ä.

Mit "AppId" kannst du alle diese Probleme umgehen. Du gibst hier den internen Schlüsselnamen an und ziehst diesen Begriff durch alle Updates durch. Auf die Weise findet die jeweils aktuellste Version immer die schon installierte alte Fassung, und der Anwender kann die neue Version immer ins selbe Verzeichnis werfen. Und das Programm mit der Liste in der Systemsteuerung:
Zitat:

Zitat von FBrust
Das Update stand auch schon zweimal mit der gleichen Bezeichnung in der Softwareliste in der Systemsteuerung.

tritt nicht auf, weil das Update ja immer den alten Schlüssel, bzw. die Einträge in selbigem, überschreibt.

MrKnogge 6. Jun 2004 09:37

Re: InnoSetup: Programmverzeichnis falsch
 
So habe ich das bisher auch gewusst, nur war jetzt die Frage, warum GUID ein eratz dafür sein sollte !?

MathiasSimmack 6. Jun 2004 09:43

Re: InnoSetup: Programmverzeichnis falsch
 
Na ja, unbedingt notwendig ist eine GUID nicht. Aber der Vorteil wäre, dass sie weltweit einzigartig ist. Es ist quasi unwahrscheinlich, dass irgendwo noch jemand die gleiche GUID hat. Wenn du stattdessen einen String für "AppId" verwendest, kann es durchaus passieren, dass jemand den gleichen String benutzt - weil sein Programm vielleicht ähnlich heißt, o.ä.

MrKnogge 6. Jun 2004 09:47

Re: InnoSetup: Programmverzeichnis falsch
 
:wall: Achso, eine GUID ist quasi eine Art Zufallszeichenkette (nur eben nicht ganz so Zufällig gewählt :mrgreen: )


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:27 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz