![]() |
InnoSetup: Parameter wahlweise übergeben
Halli hallo Leute,
Ich stehe vor der Aufgabe ein InnoSetup zu erzeugen was einen Pfad als Parameter übergeben bekommen haben KANN, aber nicht muss Nun ist es bei Inno ja so das man dies SO macht: [SETUP] DefaultDirName = {pf} {pf} steht ja im Allgemeinen für den Programme-Ordner nun will ich aber prüfen ob dem Setup ein Parameter (Ziel-Pfad) übergeben wurde in das es sich installieren soll... Und da ich nicht will das man mir vor hällt ich würde gar nix tun, weiß ich auch schon wo ich abfrage ob mein Setup einen Pfad bekommen hat:
Delphi-Quellcode:
nun, wie weise ich dem Setup denn den neuen Wert zu?
function InitializeSetup: boolean;
begin // ABFRAGE Result := 0 end; Kann ich das etwa einfach machen indem ich DefailtDirName als Variable anspreche? :gruebel: Achja, nur so als kleine information: Ich gebs gerne zu, was Inno betrifft bin ich leider noch nicht so bewandert... Bitte also um eure hilfe :cheers: Liebe Grüße stho |
Re: InnoSetup: Parameter wahlweise übergeben
Mit Parametern habe ich innerhalb von Inno auch noch nicht gearbeitet, aber was ich so auf die Schnelle aus der lesenswerten Hilfe entnehmen kann.
function ParamCount: Integer; Description: Returns the number of command line parameters passed to Setup or Uninstall. function ParamStr(Index: Integer): String; Description: Returns the Index-th command line parameter passed to Setup or Uninstall. DefaultDirName The value of this required directive is used for the default directory name, which is used in the Select Destination Location page of the wizard.Normally it is prefixed by a directory constant. Auf die internen Variablen kann man mittels ExpandConstant zugreifen. Also müsste das (ungetestet!) ca. so aussehen
Delphi-Quellcode:
Einfach mal als Ansatz damit rumprobieren.
if ParamCount > 1 then
DefaultDirName := ParamStr(2) else DefaultDirName := ExpandConstant('{pf}') + 'MyProgName'; Direktes Zuweisen funktioniert nicht, hab's gerade ausprobiert. Dafür kann man aber das Zusammenbauen des Install-Dirs im Setup-Dir als Funktionsaufruf einbinden: [code=delphi] DefaultDirName={code:GetAppFolder}\
Code:
Kam nicht umhin das eben mal ausprobieren zu wollen :D
function GetAppFolder(Param: String): String;
begin if ParamCount > 1 then Result := ExpandConstant('{pf}') + '\' + ParamStr(2) // C:\Programme\ParameterWert else Result := 'D:\Temp\Test\'; // Ergebnis ohne Parameter end; |
Re: InnoSetup: Parameter wahlweise übergeben
Ansonsten bietet Inno Setup auch noch
Delphi-Quellcode:
var
s: string; begin s := GetCmdTail; end; |
Re: InnoSetup: Parameter wahlweise übergeben
Zitat:
okay, das muss ich mir mal genauer angucken... o.O @DelphiBandit: Und dir danke ich auch schonmal... mal gucken was ich da so machen kann ^^ |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:52 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