Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Betriebssysteme (https://www.delphipraxis.net/27-betriebssysteme/)
-   -   Verständnisproblem PATH-Variable (https://www.delphipraxis.net/147686-verstaendnisproblem-path-variable.html)

Namenloser 14. Feb 2010 00:54


Verständnisproblem PATH-Variable
 
Hallo Delphianer,

Windows treibt mich grad mal wieder in den Wahnsinn. Ich würde gerne C:\program files\Python\ in den Suchpfad eintragen, damit ich - egal in welchem Verzeichnis ich mich gerade befinde - auf der Konsole sowas eingeben kann wie "python test.py".
"Kein Problem", denke ich mir und navigiere in der Systemsteuerung zu "System und Wartung" -> "System" -> "Erweiterte Systemeinstellungen" -> "Erweitert" -> "Umgebungsvariablen", finde in dem winzigen 4-zeiligen unskalierbaren Guckloch den PATH-Eintrag, klicke auf Bearbeiten und scrolle mithilfe der Ende-Taste ans Ende des ca 300 pixel breiten, ebenfalls nicht skalierbaren, einzeiligen Textfeldes und füge dort ";C:\program files\Python\;" ein. Anschließend bestätige ich die Eingabe und schließe das Fenster. "Erledigt", denke ich.

Nix da: Rufe ich auf der Kommandozeile den befehl "python" auf, meldet Windows, der Befehl sei nicht gefunden worden. Also öffne ich das Fenster mit den Umgebungsvariablen nochmals und prüfe nach, ob da auch alles drinsteht: Das ist der Fall. "Nunja, vielleicht speichert die cmd.exe ihre Pfadvariable aus unerfindlichen Gründen ja woanders", denke ich mir und erinnere mich an den "set path"-Befehl. Wenn ich diesen aufrufe, wird mir der Suchpfad ohne "C:\program files\Python\" ausgegeben. "Ursache gefunden?", frage ich mich. Also gebe ich hoffnungsvoll "set path > c:\path.txt" ein, um die Ausgabe des set path-Befehls in eine Datei umzuleiten, damit ich später mit einem Editor den Pfad anpassen kann. Nachdem ich den Pfad mit Notepad++ an die datei angefügt habe, und nach einigen fehlgeschlagenen Versuchen, den Inhalt der Datei dem set path befehl direkt zu übergeben, kopiere ich schließlich den Inhalt der Datei aus Notepad++ direkt in die Commandline und drücke Enter. Zum Überprüfen, ob das ganze diesmal geklappt hat, gebe ich nochmals "set path" ohne Parameter ein. Die Ausgabe ist korrekt und enthält den von mir hinzugefügten Pfad. Auch der Aufruf von Python klappt nun aus jedem beliebigen Ordner. "Problem gelöst", denke ich.

Dann schließe ich das cmd-Fenster und rufe ein neues auf. Und: ES KLAPPT WIEDER NICHT. Der Befehl "python" wird nicht gefunden. Mit "set path" überprüfe ich entnervt erneut den Suchpfad, und WIEDER IST DER NEUE EINTRAG VERSCHWUNDEN. WTF. In meiner Verzweifelung probiere ich es noch mit dem Befehl "path" (ohen set), obwohl ich nicht einmal sicher bin, ob der überhaupt Parameter entgegennimmt. Wenn ich den Suchpfad im Umgebungsvariablen-Dialog, der aufgrund seiner Unskalierbarkeit eine absolut fürchterliche Usability hat, ansehe ist der Pfad immer noch enthalten. Nur scheint das die cmd nicht zu scheren.

Das ist grad wieder einer dieser Punkte, wo ich am liebsten den ganzen Rechner plattmachen und Linux installieren würde. :wall:

Nachdem ich hier jetzt meinen Dampf abgelassen habe, hoffe ich, dass mir vielleicht trotzdem jemand verraten kann, was ich falsch mache. Ich nutze Windows Vista mit abegschalteter UAC als Administartor (keine Kommentare dazu bitte).

samso 14. Feb 2010 07:25

Re: Verständnisproblem PATH-Variable
 
Ruhig Brauner...

Um die Path-variable dauerhaft zu setzen, muss man über die Systemsteuerung gehen, ansonsten verändert man die Pathvariable nur für den laufenden Prozess - sprich für die gerade offene Eingabeaufforderung. Nach der Änderung in der Systemsteuerung muss die Eingabeaufforderung zunächst geschlossen werden bzw. eine neue Eingabeaufforderung geöffnet werden. Hintergrund: Beim Starten eines Prozesses werden die Environmentvariablen für den Prozess kopiert und dann nicht mehr verändert, es sei denn, der Prozess ändert sie. Ich würde vielleicht auch mal ";C:\program files\Python" probieren, also ohne Slash und Semikolon. Änderst Du die "Systemvariablen" oder die "Benutzervariablen"?

SirThornberry 14. Feb 2010 08:47

Re: Verständnisproblem PATH-Variable
 
Den Weg über die Systemsteuerung bist du ja schon gegangen. So weit ich weiß musst du dich aber mindestens neu abmelden und wieder anmelden (kann auch sein das ein Neustart erforderlich war).

Christian Seehase 14. Feb 2010 10:20

Re: Verständnisproblem PATH-Variable
 
Zitat:

Zitat von NamenLozer
Wenn ich den Suchpfad im Umgebungsvariablen-Dialog, der aufgrund seiner Unskalierbarkeit eine absolut fürchterliche Usability hat,

Das geht deutlich leichter, wenn man den Wert, z.B., in ein Notepad kopiert, dort bearbeitet und dann wieder zurückschreibt.

Luckie 14. Feb 2010 11:12

Re: Verständnisproblem PATH-Variable
 
Zitat:

Zitat von SirThornberry
Den Weg über die Systemsteuerung bist du ja schon gegangen. So weit ich weiß musst du dich aber mindestens neu abmelden und wieder anmelden (kann auch sein das ein Neustart erforderlich war).

Es reicht den Prozess neu zu starten.

Namenloser 14. Feb 2010 14:13

Re: Verständnisproblem PATH-Variable
 
Danke euch,

also nach dem Neustart scheint es jetzt zu funktionieren. Ein Neustart des Prozesses reichte dazu aber nicht aus - kann das daran liegen, dass aufgrund eines lighttpd-Webservers einige versteckte cmd-Instanzen im Hintergrund laufen?


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