Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Konstante dynamisch zuweisen aber wie? (https://www.delphipraxis.net/81002-konstante-dynamisch-zuweisen-aber-wie.html)

Danez 18. Nov 2006 21:34


Konstante dynamisch zuweisen aber wie?
 
Hallo Leute,

Mein erster post hier und gleich ne hoffentlich lösbare Frage.
Ich hab ein Programm das einen StandardOrdner anzeigen soll, falls in der *.ini noch keiner vorhanden ist.
Der Ordner soll C:/Programme/Meins sein, bzw. bei anderen lokalen Versionen von Windows sich anpassen (C:\Program Files\Meins bei englisch zum beispiel).

ich habs so probiert, aber das klappt nicht:
Delphi-Quellcode:
const programfolder = getenv('ProgramFiles');
Hat jemand ne Lösung bzw nen Vorschlag?

Hador 18. Nov 2006 21:36

Re: Konstante dynamisch zuweisen aber wie?
 
Konstanten haben, wie der Name schon sagt, einen Konstanten Wert.
Wenn du den Wert, wie in deinem Beispiel, verändern willst, dann musst du eine Variable nehmen.

Und:
Herzlich wilkommen in der DP

Danez 18. Nov 2006 21:59

Re: Konstante dynamisch zuweisen aber wie?
 
Ich will den Wert ja eigentlich nicht verändern sondern nur beim initialisieren einen Rückgabewert einer Funktion zuweisen (getenv() in dem Fall).
Naja ich nehme am besten eine variable ist wohl dieeinfachste Lösung, dacht nur vielleicht ist es ja irgendwie möglich.

SirThornberry 18. Nov 2006 22:03

Re: Konstante dynamisch zuweisen aber wie?
 
bei Constanten ist das nicht möglich das Constanten vom Compiler aufgelöst werden und an allen Stellen im Quelltext vorm compilieren ersetzt werden.

Danez 18. Nov 2006 22:28

Re: Konstante dynamisch zuweisen aber wie?
 
hmmm das funtkioniert mit variablen auch nicht.
also wenn ichs jetzt so mach:

Delphi-Quellcode:
var Programfolder:String = GetEnvironmentVariable('PROGRAMFILES');
dann bekomm ich genau wie bei constanten:
Constant expression Expected

SirThornberry 18. Nov 2006 22:31

Re: Konstante dynamisch zuweisen aber wie?
 
bei der Declaration geht das nicht. Wenn dann musst du es im "initialization"-Abschnitt machen oder an einer anderen Stelle bevor du darauf zugreigst (zum Beispiel in der Projektdatei oder im OnCreate des Hauptformulars wenn es eines gibt)

Danez 18. Nov 2006 22:55

Re: Konstante dynamisch zuweisen aber wie?
 
Habs jetzt mit initialization gelöst.
Danke


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:56 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