Fehlende Umgebungsvariablen in Windows 7 [Duplikat]

9

Wenn ich meinen Computer neu starte, ist alles in Ordnung. Nach einigen Stunden hören Anwendungen wie Visual Studio, Notepad ++, Spiele, iTunes, Windows-Komponenten (Cmd-Eingabeaufforderung, Explorer usw.) usw. auf, mit Fehlern über fehlende Dateien oder nicht ordnungsgemäße Installation zu arbeiten.

Ich habe festgestellt, dass ich, wenn ich zu Cmd.exe navigiere und es direkt ausführe (anstelle des Menü-Links), es ausführen kann und die WinDir-Umgebungsvariable und andere fehlen (was erklärt, warum ich Cmd.exe nicht ausführen kann aus der Verknüpfung, da% WinDir% \ System32 für den Pfad verwendet wird) und der Systempfad auf (NULL) gesetzt ist.

Wenn ich zu den erweiterten Systemeinstellungen gehe (erneut manuell nach SystemPropertiesAdvanced.exe suchen), sind alle Umgebungsvariablen noch vorhanden. Ich habe meine Speichernutzung überprüft und habe 1 von 6 Gig frei, wobei mein Commit Charge-Peak deutlich unter dem Grenzwert liegt (wie 30%).

Die Zwischenablage funktioniert auch nicht mehr.

Keine exotischen Aktionen ausführen, obwohl viele Chrome-Registerkarten geöffnet sind. Ausführen von Backblaze für Backups, Microsoft Security Essentials und verschiedenen anderen Dienstprogrammen. Das Schließen von Dingen nacheinander schien das Problem nicht zu beheben.

Es wurde immer schlimmer (immer früher). Möchten Sie wissen, was es verursacht, ohne es neu zu installieren.

Ausführen von Windows 7 Ultimate 64-Bit

Jim McKeeth
quelle
Dies passiert jedes Mal, wenn Sie eine Weile booten und arbeiten?
Synetech
1
@Synetech: In letzter Zeit ist es jedes Mal passiert, aber nicht nach dem gleichen Intervall. Ich habe das Muster noch nicht entdeckt. Erwarten Sie, dass es mich frustriert, bis ich neu starte.
Jim McKeeth
Könnte es sich um eine Griffleckage handeln? Haben Sie den Task-Manager überprüft und die entsprechenden Spalten auf der Registerkarte "Prozess" aktiviert, um festzustellen, ob einer der Prozesse alle Ihre Handles verschlingt?
Lasse V. Karlsen
Ich habe das gleiche Problem, bei dem die meisten meiner Umgebungsvariablen verloren gehen. Es scheint erst aufzutreten, nachdem mein System aus dem Schlaf erwacht ist. Ich verwende Windows 7 Enterprise 32-Bit in einer Domäne.
Im Dezember traten bei 64-Bit-Vista dieselben Symptome auf. Mein PC kann einige Tage laufen, bevor dies geschieht, und ich muss neu starten. Kaspersky Antivirus hat kein Problem gefunden. Auch hier berichtet: [ superuser.com/questions/355594/…
Lee

Antworten:

8

Ich habe mit dem gleichen Problem gekämpft. Symptome:

  • Neustart: alles in Ordnung
  • Nach einer Weile: Programme scheinen %windir%Umgebungsvariablen zu verlieren und daher beginnen die Dinge zu brechen

In meinem Fall hatte ich ein etwas großes %PATH%, also habe ich viele Einträge von PATH gekürzt und es wurde behoben . Ich bin mir nicht sicher, wie eine große PATHDose reinigen soll, WINDIRaber es schien sie repariert zu haben.

Der Fix bewirkt nicht sofort (Sie müssen den Explorer neu starten oder neu starten), aber ich kann ihn überprüfen, indem ich den Task-Manager verwende, um explorer.exe zu beenden und erneut zu öffnen (wodurch ein Neustart vermieden wird). Der Task-Manager erbt Umgebungsvariablen von winlogon, während der Prozess-Explorer sie anscheinend von jedem Prozess erbt, der ihn gestartet hat. Daher kann das Problem Ihrer großen Umgebungen bestehen bleiben, obwohl Sie sie geändert haben.

Miguel Ventura
quelle
1
Das hat den Trick für mich getan. Ich habe kürzlich ein Programm installiert, das aber eine ganze Reihe von Dingen auf meinem Weg hat. Nachdem ich diese Einträge entfernt hatte, fing alles wieder an zu funktionieren.
Eric Milas
2

Ich hatte auch eine sehr lange Umgebungsvariable% PATH%. Als Softwareentwickler habe ich normalerweise regelmäßig mehrere Anwendungen installiert und von meinem Computer entfernt. Es ist üblich, dass einige Anwendungen einen durch Semikolon getrennten Eintrag in die Umgebungsvariable% PATH% einfügen, normalerweise, wenn die installierte Anwendung möglicherweise über die Befehlszeile (cmd.exe) ausgeführt wird, weil ich mich nicht allzu sehr damit beschäftige Welche Anwendungen über die Standardbefehlszeile ausgeführt werden, habe ich alle Einträge aus der Variablen% PATH% zurückgesetzt, mit Ausnahme von C: \ Windows \ System32 (dem Ort, an dem die meisten Ihrer "Cmdlets" ausgeführt werden. Ein bisschen mehr Informationen können finden Sie zum Thema auf wiki-pedia @ http://en.wikipedia.org/wiki/PATH_(variable) Für eine schnelle Lösung (Windows 7) gehen Sie wie folgt vor:

1.) Klicken Sie auf Start. Kopieren Sie im Suchfeld unten im Menü Folgendes und geben Sie Folgendes ein oder geben Sie Folgendes ein, um das Fenster Erweiterte Systemeigenschaften C: \ Windows \ System32 \ SystemPropertiesAdvanced.exe zu öffnen (drücken Sie die Eingabetaste).

2.) Klicken Sie auf die Schaltfläche Umgebungsvariablen am unteren Rand des Fensters knapp über dem OK, brechen Sie den Cluster ab und wenden Sie ihn an.

3.) Das Fenster Umgebungsvariablen sollte jetzt angezeigt werden. Suchen Sie im zweiten Listenfeld auf dem Bildschirm mit dem Kopfzeilentext (Systemvariablen) das Wort Pfad unter der Spalte Variable und doppelklicken Sie darauf.

4.) Sie sollten sich eine Liste von Verzeichnissen auf Ihrem Computer ansehen, die durch das getrennt sind. Trennzeichen. Achten Sie genau darauf, einige möchten Sie vielleicht, und einige fragen sich vielleicht, warum sie vorhanden sind. Machen Sie so viele Pfade frei, wie Ihr Herz begehrt. Hier geht es darum, den Pfad so weit zu verkürzen, wie Sie sich wohl fühlen. Wiederum habe ich meinen verkürzt C: \ WINDOWS \ system32 und hatte seitdem keine Probleme mehr.

5.) Wenn Sie die Pfadvariable bearbeitet haben, klicken Sie in allen geöffneten Dialogfenstern auf "OK".

6.) Klicken Sie erneut auf Start, geben Sie in der unteren Suchleiste taskmgr ein und drücken Sie die Eingabetaste auf Ihrer Tastatur.

7.) Klicken Sie auf die Registerkarte "Prozesse" und suchen Sie den Prozess "Explorer.exe" in der Spalte "Bildname" des Prozessrasters. Klicken Sie einmal auf den Prozess, um ihn hervorzuheben, und klicken Sie dann auf die Schaltfläche "Prozess beenden".

8.) Klicken Sie auf Datei (wenn Sie es nicht sehen, drücken Sie zuerst die Alt-Taste) und klicken Sie auf den Untermenüpunkt unter Datei "Neue Aufgabe (Ausführen)".

9.) Geben Sie im angezeigten Eingabefeld Explorer ein und drücken Sie die Eingabetaste oder klicken Sie auf OK.

Testen Sie Ihre defekten Links / Verknüpfungen, um festzustellen, ob sie jetzt funktionieren.

DeepGeek
quelle
1

Per Lasse V. Karlsens Vorschlag suchte ich beim nächsten Mal nach einer wirklich hohen Anzahl an Griffen. Audacity hatte 41.000 von ihnen, und es war in letzter Zeit auch ziemlich instabil. Leider habe ich die neueste Version (1.3.12), und das Schließen scheint nicht alle Handles zurückzugewinnen. Ich werde einen Fehlerbericht einreichen.

HINWEIS : Während Audacity Griffe undicht hatte, scheint dies nicht die einzige Ursache für meine Kopfschmerzen gewesen zu sein. Ich habe immer noch Probleme und habe Audacity seit dem Neustart nicht mehr verwendet. Möglicherweise ist Zeit für eine Neuinstallation.

Am Ende wurde ich neu installiert, bevor ich eine Lösung fand.

Jim McKeeth
quelle
0

Ich habe ähnliche Symptome, aber meine PATH-Variable war nicht zu lang. Ich finde es gut, meine Erfahrungen hier zu teilen:

Ich habe eine Visual Studio-Erweiterung installiert, als VSIXInstaller.exe abgestürzt ist. Danach verschwanden einige Umgebungsvariablen (einschließlich% windir%). Visual Studio konnte nicht gestartet werden.

Ich weiß nicht, warum dieser Absturz Umgebungsvariablen beeinflusst hat, aber ich bin sicher, dass er verknüpft ist, da ich dieses Szenario mehrmals wiederholt habe.

Ich fand heraus, warum VSIXInstaller.exe abstürzte und jetzt alles gut geht.

GGES
quelle
Dies ist möglicherweise nur dann nützlich, wenn Sie erklären, was Sie herausgefunden haben und wie Sie es behoben haben. Ansonsten ist dies keine Antwort, sondern ein Kommentar "Ich habe auch dieses Problem".
Fixer1234
Hallo @ fixer1234, du hast recht. Deshalb ist VSIXInstaller in meinem Szenario abgestürzt: Ich habe ein Batch-Skript erstellt, um VSIXInstaller für 2 vsix-Dateien zu starten, und diese 2 Dateien dann gelöscht. Das Problem ist, dass VSIXInstaller asynchron ist und keine gute Lösung für die Installation von Script vsix darstellt. Mein Skript startete 2 Installationen parallel und löschte die Dateien vor dem Ende. Als Problemumgehung habe ich eine Unterroutine erstellt, die auf das Ende von VSIXInstaller.exe wartet. Ich habe auch eine Alternative zu VSIXInstaller gefunden, es aber nicht ausprobiert: link
GGES