Delphi: Umgebungsvariablen lesen?

Hallo!

Wie kann ich in Delphi Umgebungsvariablen lesen? In Pascal 7 ging das immer so gut mit GETENV(), das gibt in Delphi aber nicht mehr. Weiss jemand, wie das geht?

MFG, Volker

Wie kann ich in Delphi Umgebungsvariablen lesen?

Hallo Volker,

welche „Umgebungsvariablen“ interessieren Dich denn? Wenn es die FormatSettings (= alles in Systemsteuerung/Ländereinstellungen) sind: die werden von der Unit „SysUtils“ bereitgestellt.

Hier die Liste:

var
 CurrencyString: string;
 CurrencyFormat: Byte;
 NegCurrFormat: Byte;
 ThousandSeparator: Char;
 DecimalSeparator: Char;
 CurrencyDecimals: Byte;
 DateSeparator: Char;
 ShortDateFormat: string;
 LongDateFormat: string;
 TimeSeparator: Char;
 TimeAMString: string;
 TimePMString: string;
 ShortTimeFormat: string;
 LongTimeFormat: string;
 ShortMonthNames: array[1..12] of string;
 LongMonthNames: array[1..12] of string;
 ShortDayNames: array[1..7] of string;
 LongDayNames: array[1..7] of string;
 SysLocale: TSysLocale;
 EraNames: array[1..7] of string;
 EraYearOffsets: array[1..7] of Integer;
 TwoDigitYearCenturyWindow: Word = 50;
 ListSeparator: Char;

Gruß
Martin

Hallo!

Ich möchte z.B. die Variable PATH oder so auslesen. Gibt es dafür eine Funktion?

MFG, Volker

Hallo Volker,

Ich möchte z.B. die Variable PATH oder so auslesen. Gibt es
dafür eine Funktion?

eine fertige Funktion dafür ist mir zumindest nicht bekannt. Also mußt Du Dir selbst eine schreiben. Du könntest z. B. einfach den SET-Befehl launchen mit Umleitung der Ausgabe in eine Datei. Wenn Du diese Datei danach in eine StringList einliest, hast Du alle Infos zur Weiterverarbeitung vorliegen.

Mich würde aber mal interessieren, wozu Du diese Umgebungsvariablen benötigst. Verrätst Du es mir?

MfG
Martin

Ich Schreibe in Delphi ein CGI-Programm und möchte die Parameter abfragen die z.B mit prog.exe?Par=Suchen übergeben wird. Dazu müsste ich die Variable QUERY_STRING lesen. Die Function GetEnvironmentVariable(‚QUERY_STRING‘,tmp,100); z.B. liefert mir andauernd einen Fehler.

MFG, Volker

Die
Function GetEnvironmentVariable(‚QUERY_STRING‘,tmp,100); z.B.
liefert mir andauernd einen Fehler.

Hallo, versuche es mal mit folgender Function:

function GetEnv(Variable:string):string;
var buffer:array[1…1024] of char;
begin
if GetEnvironmentVariable( pChar(variable) , @Buffer, Sizeof(buffer) )=0 then
result:=’’
else
result:=buffer;
end;

Viele Grüße, Joachim