Informationen zur Entwicklung des Problems finden Sie in den Updates 3 und 4 weiter unten
Mein Computer (Windows 7 x64, Lenovo Thinkpad T530) hat ein Problem mit der Lösung von% windir%. Nach dem Booten funktioniert alles einwandfrei. Irgendwann später ist der Computer plötzlich nicht mehr in der Lage,% windir% aufzulösen.
Wenn Sie das Fenster mit den Umgebungsvariablen überprüfen, wird angezeigt, dass es definiert ist.
Das Überprüfen der Registrierung zeigt auch, dass diese ebenfalls definiert ist. Ich habe den Schlüssel tatsächlich gelöscht und ihn ohne Erfolg erneut eingegeben .
Nach einem Neustart funktioniert eine Weile alles einwandfrei. Hat jemand irgendwelche Gedanken zu irgendetwas anderem, was ich überprüfen kann?
Update 1: Nach einiger Überlegung habe ich den Konica Minolta Pagebox-Treiber / das -Programm deinstalliert, das ungefähr zu dem Zeitpunkt installiert wurde, als dieses Problem auftrat (siehe Kommentare unten). Es scheint ungefähr 4 bis 24 Stunden zu dauern, bis sich das Problem manifestiert (ich habe es nie geplant). Ich werde es danach erneut aktualisieren.
Update 2: Das Problem tritt weiterhin auf. Ich bin vom Mittagessen zurückgekommen und% windir% kann nicht gefunden werden. Ich habe heute Morgen nach einem Neustart einen Test durchgeführt, den Computer in den Energiesparmodus versetzt und ihn dann aufgeweckt. % windir% war nach dem Aufwachen noch definiert.
Update 3:
Per Daniel in den Kommentaren bin ich set
vor und nach Fehler gelaufen und habe die Ausgaben verglichen. Das Erste, was mir aufgefallen ist, ist, dass mein % path% bei einem Neustart mehr als 2000 Zeichen lang ist . Ich habe es auf ~ 375 Zeichen gekürzt und in einem neuen Cmd-Fenster überprüft. Ich habe neu gestartet, den Pfad erneut überprüft und es waren mehr als 2000 Zeichen (es stimmte mit dem überein, was ich ursprünglich gesehen hatte). Ich habe es wieder abgeschnitten und neu gestartet und das gleiche passierte. Ich habe die Pfadvariable gelöscht und eine neue erstellt. das Gleiche ist passiert. An diesem Punkt kann ich nur zu dem Schluss kommen, dass ich meinen Pfad entweder nicht dauerhaft ändern kann oder dass der Pfad durch einen Prozess beim Booten zurückgesetzt wird. Irgendwelche Gedanken?
Update 4:
Ich habe meinen Pfad mit der unten vorgeschlagenen Registrierungsmethode bearbeitet. Ich habe heute nach einer Weile meinen Pfad überprüft und er ist gewachsen von dem, was ich in die Registrierung eingegeben habe. Es gibt jetzt ein paar neue Einträge und viele Duplikate. Die einzigen neuen Einträge stammen aus SQL Server 2012. Ich habe dies in der Registrierung geändert und festgestellt, dass die Registrierung NICHT mit der Ausgabe von übereinstimmt echo %path%
. Durch Überprüfen der Umgebungsvariablen auf der Registerkarte Erweiterte Eigenschaften wird eine dritte Version meines Pfads angezeigt.
Registry Path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;
Command Line path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;
C:\Program Files(x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
Environment Variables path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
Es sieht so aus, als ob der Befehlszeilenpfad = Registrierungspfad + Umgebungsvariablenpfad . Ich habe versucht, den Registrierungspfad und den Pfad der Umgebungsvariablen auf dasselbe zu setzen und neu zu starten. Nach dem Neustart ist mein Pfad jetzt verdoppelt, im Grunde genommen zwei aufeinanderfolgende Kopien des Registrierungspfads oben.
Nochmals irgendwelche Gedanken?
Update 5: Nach einem Gespräch mit dem IT-Manager kämpft er gegen ein ähnliches Problem auf einem anderen Computer. Beide Computer haben SSDs (scheint der einzige gemeinsame Faktor zu sein). Dies kann relevant sein oder nicht.
set
einen Wert zuzuweisen,windir
und wiederholen Sie den Vorgang mit.echo
Überprüfen Sie, ob dies zu einer Ausgabe führt oder nicht. Wenn dies der Fall ist, ist etwas mit Ihren env-Variablen nicht in Ordnung. Wenn nicht, ist etwas mit Ihrem Shell- und / oder Echo-Befehl nicht in Ordnung.Antworten:
Ich hatte das gleiche Problem und fand diese Frage zuerst. Die eigentliche Ursache / Lösung wird in dieser Frage jedoch noch nicht erwähnt, sondern hier: Die PATH- und Umgebungsvariablen von Windows 7 sind beschädigt
Zusammenfassung der Lösung: Stellen Sie sicher, dass Ihr Pfad <2048 Zeichen ist. Checken Sie sowohl die Benutzervariablen als auch die Systemvariablen ein.
quelle
Setzen Sie in der GUI den variablen Inhalt von % windir% auf % SystemRoot% .
Was Ihren% path% betrifft, können Sie dies mit dem Registrierungseditor lösen:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
Path (REG_EXPAND_SZ)
quelle
Ich hatte das gleiche Problem in meinem Lenovo TS530. Es begann nach der Installation von neuen Programmen auftritt , die mein verursachte Weg noch viel länger zu sein als zuvor , und so , dass die Installateure die neuen Sachen in den Anfang der zugegebenen Pfad Definition. Ich habe den Pfad in regedt bearbeitet, indem ich % SystemRoot% an den Anfang der Pfaddefinition verschoben habe .
Außerdem habe ich die Umgebungsvariable windir von bearbeitet
zu
Das scheint das Problem behoben zu haben. (Es ist möglich, dass ich den Fehler mit Backslash früher gemacht habe, als ich versucht habe, das Problem zu beheben. Alternativ hat das Installationsprogramm ihn geändert.)
quelle
/
statt zu verwenden\
.Ich hatte das gleiche Problem. Es wurde behoben, als ich die PATH-Umgebungsvariable (nach dem Erstellen einer Sicherungskopie ihres Inhalts) im folgenden Dialogfeld löschte .
Ich habe die PATH-Variable später nacheinander rekonstruiert. Ich habe einen Teil des PATH-Inhalts, der nicht in die Systemvariablen passte, in die User-Variablen PATH verschoben.
quelle
Wie bereits von @ Pieter-Jan Busschaert erwähnt, liegt es wahrscheinlich an einer beschädigten oder zu langen
PATH
Umgebungsvariablen.Der einfachste Weg, dies zu beheben, besteht darin, den Rapid Environment Editor herunterzuladen . Es zeigt Ihnen, was mit Ihren
PATH
Einstellungen nicht stimmt und lässt Sie es sofort beheben.quelle
Ich habe (konsistent) festgestellt, dass dies auch auftreten wird, wenn SQL Server 2012 oder neuere Versionen auf dem Windows 7-Computer installiert sind (nicht sicher, ob das Problem auch auf Win8.x oder Win10 auftritt), aber die Lösung, die ich gefunden habe, lautet: Erstellen Sie außerdem die Umgebungsvariable windir im aktuellen Benutzerkontext, um sie auf% SystemRoot% zu setzen. Das einzige Mal, wenn wir dies sehen, ist RDP'ing (Remote-Sitzung) in die Arbeitsstation (en). Wenn wir uns in die Konsole einloggen würden, würden wir dies überhaupt nicht bemerken. Ich weiß nicht, ob SQL 2012-Komponenten (oder höher) gerade vor diesem Ereignis auf Ihrem Computer installiert wurden oder nicht, aber Sie können diese Lösung ausprobieren.
quelle
Unser Helpdesk gab mir diese Antwort:
Es funktioniert auf zwei verschiedene Arten:
1.) Dieses Problem existiert nicht wirklich, da dieses Programm% windir benötigt, um korrekt zu funktionieren. Führen Sie stattdessen C: \ Windows \ System32 \ UserAccountControlSettings in der Eingabeaufforderung aus.
2.) Sie möchten die Windows-Sicherheitswarnungen nicht haben.
quelle
Ich hatte das gleiche Problem nach dem Upgrade auf eine SSD auf meinem Lenovo X230. Die Software, die ich für die Migration verwendet habe (Acronis TrueImage), hat einen Pfadwert hinzugefügt, der mich über das Limit hinausgeschoben haben muss. Ich habe es wie folgt gelöst:
Öffnen Sie Regedit
Gehe zu
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
Ändern Sie den Pfadwert (siehe die Antwort von user184745 oben).
Schneiden Sie den aktuellen Wert aus und fügen Sie ihn in den Editor ein.
Mehrere doppelte Werte sowie Pfade, die wenig nützlich schienen, wurden herausgeschnitten. Ich habe die Länge des Pfades von 2.283 Zeichen auf 1.517 Zeichen reduziert.
Fügte die neue Pfadzeichenfolge in den Pfadschlüssel ein.
(Speichert den Inhalt meines Notepad für alle Fälle.)
Neu gestartet Alles ist gut.
quelle
Überprüfen Sie die Einschränkung der Pfadvariablen: https://support.microsoft.com/en-us/kb/2685893
quelle
Ich hatte die gleichen Probleme wie oben. % windir%. Symbole werden für einige Elemente nicht angezeigt. Jede Anwendung, die Windows verwendet hat ... Hat alle Korrekturen durchlaufen, einschließlich Kaltstart, Pfadverkürzung usw.
Endlich wurde mein Windows-Profil neu erstellt ... Problem behoben.
quelle