Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Inno Setup und INI Datei auslesen (https://www.delphipraxis.net/13285-inno-setup-und-ini-datei-auslesen.html)

tamarix 15. Dez 2003 15:19


Inno Setup und INI Datei auslesen
 
Hi Leute,

ich habe mit Inno Setup ein Setup erstellt, aber da noch ein kleines Problem.

Im Setup Bereich habe ich folgenden Eintrag um das Installationsverzeichnis
auszulesen:

DefaultDirName={ini:{%MyVari}MyINI.ini,PFADE,/MyProg/ABC/|{pf}\My Program}

das funzt soweit auch.

Ich möchte aber nur das erste Verzeichnis in meiner Verzeichnisauswahl haben.

Nähmlich: D:\MyProgDAT\


Hier ein auszug aus der MyINI.ini

[PFADE]
/MyProg/ABC/=D:\MyProgDAT\ABC\


Kann ich das irgendwie einstellen?


Tamarix

MrKnogge 15. Dez 2003 16:25

Re: Inno Setup und INI Datei auslesen
 
versteh ich dich richtig,du liest den Install-Pfad aus ner Ini aus ?
Nun, nenn die Sektions halt [Pfad1], [Pfad2]....

Aberwarum scheibst du ihn nicht direkt rein, so musst du ja die Ini immer mitliefern :gruebel:

tamarix 15. Dez 2003 18:30

Re: Inno Setup und INI Datei auslesen
 
Hi MrKnogge,

die INI und die Umgebungsvariable ist bereits auf dem System vorhanden
und gehört zu einem Programm das bereits installiert ist.

Ich möchte mit dem Setup Daten updaten. In der INI ist der Verweis auf die
bereits installierten Daten eingetragen.

Bei dem Datenupdate soll nun das Setup die INI auslesen wo die Daten installiert
sind und das Laufwerk und Wurzelverzeichnis als Installationspfad vorschlagen.

Das besondere ist noch dass das Datenupdate aus mehreren Verzeichnissen besteht,
die jeweils in der INI eingetragen sind. Aus diesem Grund soll nur das
Wurzelverzeichnis ausgewählt werden.


Alternativ könnte ich im CODE Bereich auch folgendes eintragen:

[Setup]
DefaultDirName={code:MyConst}

...

[CODE]
function MyConst(Default: String): String;
var s: String;
begin

s := ExpandConstant('{ini{%MyVari}MyINI.ini,PFADE,/MyProg/ABC/}');

Result := Copy(s,1,length(s)); //Wie kann ich hier die letzten 4 Zeichen abschneiden?

end;


Besteht hier irgendwie die Möglichkeit den TeilString so herauszufiltern
das die letzten 4 Zeichen weggeschnitten werden und ich als Ergebnis
(Beispiel D:\MyProgDAT\) erhalte da das Datenverzeichnis immer aus
3 Zeichnen besteht.

Hier ein Auszug aus der MyINI.ini

[PFADE]
/MyProg/ABC/=D:\MyProgDAT\ABC\


Tamarix


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:01 Uhr.

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