![]() |
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:
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.
[Setup]
AppName=QualiCo AppVerName=QualiCo 1.4.16 - Update Build 101 DefaultDirName="{pf}\CES" DisableDirPage=no Hat vielleicht jemand einen Tip, wie ich die {app}-Variable auf "C:\Programme\CES" kriege? Gruß Frank |
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. |
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. |
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 ? |
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 |
Re: InnoSetup: Programmverzeichnis falsch
Hallo,
hab das mit der GUID hinbekommen, war wohl im falschen Fenster...:roll: Gruß frank |
Re: InnoSetup: Programmverzeichnis falsch
Zitat:
Code:
lauten. Solange sich dieser Name, "QualiCo", nicht ändert, ist es kein Problem. Anders sieht es aus, wenn jemand die Versionsnummer mit einbaut, bspw.
QualiCo_is1
Code:
dann würde der Schlüssel in der Registry natürlich
[Setup]
AppName=Mein Programm 1.1
Code:
lauten. Bei einer evtl. neuen Version 1.2 dann eben
Mein Programm 1.1_is1
Code:
usw. Oder wenn sich der Name an sich mal ändert, bspw. von "Mein Programm" nach "Mein Programm Professional Edition", o.ä.
Mein Programm 1.2_is1
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:
|
Re: InnoSetup: Programmverzeichnis falsch
So habe ich das bisher auch gewusst, nur war jetzt die Frage, warum GUID ein eratz dafür sein sollte !?
|
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.ä.
|
Re: InnoSetup: Programmverzeichnis falsch
:wall: Achso, eine GUID ist quasi eine Art Zufallszeichenkette (nur eben nicht ganz so Zufällig gewählt :mrgreen: )
|
Re: InnoSetup: Programmverzeichnis falsch
Ja, kann man so sagen. Bei Microsoft müsste sich evtl. auch Material finden lassen, wie sich diese GUID berechnet. Ich erinnere mich bspw. noch an eine Erläuterung von Andreas Kosch im Entwicklerforum: Er schrieb, dass das letzte Feld der GUID mit der MAC-Adresse der eingebauten Netzwerkkarte identisch ist. Na ja, bzw. irgendwie steckt die Adresse da drin.
Und das siehst du auch. Wenn du eine Netzwerkkarte hast, dann erzeuge mal ein paar GUIDs. Das letzte Feld ist immer identisch. Schon allein das stellt IMHO sicher, dass es die GUID weltweit nur ein einziges Mal gibt. Ohne Netzwerkkarte wird auch das letzte Feld zufällig berechnet. Aber selbst da sollte es so gut wie keine Probleme geben. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz