AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Problem mit SetEnvironmentVariable
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit SetEnvironmentVariable

Ein Thema von cruiser · begonnen am 3. Mär 2004 · letzter Beitrag vom 4. Mär 2004
 
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.124 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Problem mit SetEnvironmentVariable

  Alt 3. Mär 2004, 15:23
Moin Cruiser,

das Problem an der Sache ist folgendes:
Wenn aus einer Konsole heraus ein Programm gestartet wird, so erbt es in der Regel das Environment des Aufrufers, also das der Konsole, und arbeitet mit einer Kopie dieses Environments.
Wird das Programm dann geschlossen, so sind auch alle Änderungen an den Umgebungsvariablen hinfällig.
Es bringt auch leider nichts die Werte direkt in die Registry zu schreiben, da diese erst nach den Start einer neuen Konsole ziehen. Eine Broadcast Message an alle Toplevel Fenster, dass sich etwas im Enviroment geändert hat bringt leider auch nichts, da die Konsolen diese nicht verarbeiten.

Der Workaround den Microsoft dazu vorschlägt ist dann auch der auf den man wohl noch selber kommen würde:
Das Programm das Umgebungsvariablen setzen soll, die dann im weiteren Verlauf des Batches benögtigt werden, erzeugt eine Batchdatei mit festgelegtem Namen, und den entsprechenden Set-Zeilen zum Setzen der Variablenwerte.
Nach dem Aufruf des Programmes muss dann noch der Aufruf eben dieser, durch das Programm erst erzeugten, Batchdatei folgen, damit weitere Programme auf die Werte der Variablen zugreifen können.

Meine Idee dazu, die ich allerdings bislang nicht weiter verfolgt habe:
Man müsste das Environment des Parentprozesses manipulieren, um den Workaround vermeiden zu können.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
 


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:16 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