![]() |
Herausfinden welche Version mit Inno installiert worden ist
Hallo,
ich habe hier ein Programm geschrieben, welches durch bedingte Compilierung in eine Vollversion und in eine eingeschränkte Version aufgeteilt ist. Ich habe dazu ein Internetupdate gemacht, in dem unglücklicherweise beide Versionen auf den gleichen Server nachschauen ob es ein Update gibt (und auch die gleiche Updatedatei runterladen). Darum habe ich gedacht, dass ich im Inno Setup über die Check Funktion festlege welche Datei upgedatet wird. Das funktioniert auch ganz gut, ich habe jetzt aber ein Problem herauszufinden welche Version ursprünglich installiert worden ist. (Wie ich also die Checkfunktion implementieren kann). Beide Versionen legen die gleichen Dateien /Registryschlüssel an, heißen aber unterschiedlich. Sie werden auch in unterschiedlichen Verzeichnissen installiert und es ist ausgeschlossen dass ein User beide Versionen auf dem Rechner hat. Mein erster Versuch ging also über den Dateinamen der installierten Exe. Das scheitert aber daran, dass ich nicht ausschließen kann, dass der Benutzer das Instalationsverzeichnis geändert hat. Ich denke dass ich die Version eindeutig identifiezieren kann, wenn ich an die Uninstallinformationen (UninstallDisplayName bzw. UninstallDisplayIcon) oder z.b AppPublisher rankomme. Diese Informationen stehen ja in der registry. Kann mir einer helfen wie ich die von Inno auslesen kann ? |
AW: Herausfinden welche Version mit Inno installiert worden ist
Inno Setup schreibt entsprechende Werte in den Uninstall-Key der Registry. Dort kann man auch Versionsinformationen hinterlegen. Ich würde aber dabei über die Dateiinformationen der EXE-Datei gehen und dort für die Vollversion und die eingeschränkte Version entsprechende Werte hinterlegen.
|
AW: Herausfinden welche Version mit Inno installiert worden ist
Danke, aber an die Dateiinformationen der Exe kann ich ja nicht dran kommen, da ich nicht weiß wo der User die Anwendung installiert hat. Es sei denn ich ändere das Setup so ab, dass der User erst das Verzeichnis der vorherigen Installation wählen muss. (Wenn ich so drüber nachdenke, ist das ja eigentlich auch die normale Vorgehensweise bei einem Update)
Noch mal wegen demm Uninstall Key. Liegen die immer unter HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\Uninstall\xxxx ? |
AW: Herausfinden welche Version mit Inno installiert worden ist
Ja, die liegen immer unter dem Key. Auch in dem Key steht das Installationsverzeichnis des Programms, wo es vom Setup installiert wurde.
|
AW: Herausfinden welche Version mit Inno installiert worden ist
Zitat:
|
AW: Herausfinden welche Version mit Inno installiert worden ist
Daran hatte ich aber gedacht. Wenigstens etwas.
Danke für Eure Hilfe |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:58 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-2025 by Thomas Breitkreuz