AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Warum keine Umgebungsvariablen nutzen?
Thema durchsuchen
Ansicht
Themen-Optionen

Warum keine Umgebungsvariablen nutzen?

Ein Thema von Popov · begonnen am 8. Jan 2013 · letzter Beitrag vom 9. Jan 2013
Antwort Antwort
Popov
(Gast)

n/a Beiträge
 
#1

Warum keine Umgebungsvariablen nutzen?

  Alt 8. Jan 2013, 20:49
Ich kann mich nicht mehr erinnern warum, ich hab es nur so im Kopf, es früher paar mal gelesen zu haben, dass es nicht empfohlen wird Systempfade über die Umgebungsvariablen zu ermitteln.

Das habe ich auch nie als Einschränkung gesehen, da ich dafür sowieso eine spezielle Unit nutze, aber gerade stehe ich wieder vor der Frage wegen des Temp-Verzeichnises eine Unit einzubinden oder es einzeilig über GetEnvironmentVariable zu ermitteln. Und da ist mir wieder die alte Empfehlung eingefallen.
  Mit Zitat antworten Zitat
dunningkruger

Registriert seit: 25. Mai 2012
59 Beiträge
 
#2

AW: Warum keine Umgebungsvariablen nutzen?

  Alt 8. Jan 2013, 21:07
Manche Installationsprogramme (alte Delphis z.B.) manipulieren die Environmentvariablen. Oft war damals bei 256 Zeichen das Ende erreicht: Es wurde an den PATH angehängt.

Unter XP SP3 würde ich nichts mehr unterstützen (ausgenommen fürstliche Bezahlung).
  Mit Zitat antworten Zitat
Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#3

AW: Warum keine Umgebungsvariablen nutzen?

  Alt 8. Jan 2013, 21:40
Zur Ermittlung des Tempverzeichnisses (bzw. konkreter Temppfades) kann man doch die API-Funktion GetTempPath benutzen. Von wegen Umgebungsvariable...
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#4

AW: Warum keine Umgebungsvariablen nutzen?

  Alt 8. Jan 2013, 22:15
Diese Api-Funktion kenne ich, es gibt noch welche für Windows- und Systemverzeichnis, aber auch nicht einzeilig.

Aber es geht weniger dadrum, weil wie gesagt, für solche Aufgaben habe ich eine Unit. Mich interessiert es vorerst allgemein ob es da wirklich gründe gegen Umgebungsvariablen gibt.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: Warum keine Umgebungsvariablen nutzen?

  Alt 8. Jan 2013, 22:31
Spontan fallen mir 2 Gründe ein:
  1. Die Pfade kann man sich (die API mal ausgenommen) aus den Umgebungsvariablen oder der Registry holen.
    Ob Microsoft aber dieses - Speicherort und Pfad, Name der Variablen - so beibehält (auch wenn es seit anno-piepen-deckel so ist) wird nicht gewährleistet.
  2. Wenn man weiß, was es bedeutet, dann kann man auch die Umgebungsvariablen benutzen, wenn es genau das ist, was man haben will.

    Die Umgebungsvariablen können pro Prozess temporär neu definiert werden. Wenn ich genau diese temporäre und für diesen Prozess hinterlegten Informationen möchte, dann muss man auf die Umgebungsvariablen zugreifen.

    Will man an die Informationen heran, die global für die Session gelten, dann sollte man auch die API fragen.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#6

AW: Warum keine Umgebungsvariablen nutzen?

  Alt 8. Jan 2013, 22:42
Ich glaube wir nähern uns dem Grund. Es fällt mir wieder leicht ein. Da war was mit - unsicher.
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Warum keine Umgebungsvariablen nutzen?

  Alt 9. Jan 2013, 08:46
Auszug aus dem MSDN:

Zitat:
The GetTempPath function checks for the existence of environment variables in the following order and uses the first path found:
The path specified by the TMP environment variable.
The path specified by the TEMP environment variable.
The path specified by the USERPROFILE environment variable.
The Windows directory.
Quelle:
http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:44 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