So stellen Sie sicher, dass PATH von SETX auf 1024 Zeichen abgeschnitten wird

12

Ich habe unter Windows 8 eine Fehlermeldung erhalten, nachdem ich versucht habe, mit SETX JAVA.exe zur Windows PATH-Variablen hinzuzufügen:

WARNING: The data being saved is truncated to 1024 characters.

Nach einem Neustart stelle ich fest, dass der Pfad tatsächlich viel kürzer als zuvor ist. Ich habe seitdem gelesen, dass SETX nicht mehr als 1024 Zeichen verarbeiten kann. Das wäre in dem Artikel gut zu wissen gewesen, in dem die Verwendung empfohlen wurde.

Ich frage mich, ob mein System jetzt instabil sein wird, da (vermutlich) einige der Verzeichnisse nicht mehr in der PATH-Variablen erscheinen. Das Ende der Zeichenfolge ist in der Mitte des Verzeichnisses (bei Pr) deutlich abgeschnitten:

(...) ;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Pr

Gibt es eine Möglichkeit zum Zurücksetzen oder irgendwo, wo der vorherige Wert von PATH erfasst wurde? Mann, ich kann nicht glauben, dass so etwas nach 29 Jahren noch in Windows passieren kann.

Doug
quelle
Anders als bei dieser Frage, da dieser Benutzer nur daran interessiert ist, einen anderen Weg zum Bearbeiten der PATH-Variablen zu finden. Ich frage mich, ob mein System beschädigt ist und wie ich es wiederherstellen kann. superuser.com/questions/387619/…
Doug
1
Ihr System wird nicht instabil sein, aber erfahren Sie von einem anderen Windows 8-Benutzer oder einer Webseite, wie der Pfad in einer neuen Windows 8-Installation aussehen sollte, und verwenden Sie diesen. Und bauen Sie es bei Bedarf an. Sichern Sie Ihren PATH immer, bevor Sie setx verwenden. Vielleicht gibt es eine Systemwiederherstellung, die Sie in Windows 8 durchführen können, um den Pfad zurückzusetzen? Es ist einen Versuch wert. BEARBEITEN HINZUFÜGEN - Wenn Sie das nächste Mal setx verwenden, wiederholen Sie zuerst% PATH%> afile <- und versuchen Sie setx für eine andere Variable, die nicht PATH ist. Wenn Sie sicher sind, dass Sie die richtige setx-Zeile haben, nachdem Sie sie auf TESTPATH ​​ausprobiert haben, setzen Sie setx auf PATH.
Barlop
1
Wenn Sie noch kein zweites Mal neu gestartet haben, können Sie Arty Ghee CurrentControlSet-Backups anzeigen.
Bob
3
@Bob gut, wenn man nicht neu gestartet hat und immer noch das gleiche cmd-Fenster geöffnet hat, dann ist die Pfadvariable nach einem setx immer noch nicht im aktuellen cmd-Fenster gesetzt, und Sie können einfach% path% Anyhow, vielleicht System, wiedergeben Wiederherstellen stellt den Pfad wieder her?
Barlop
1
Informationen zur Stabilität : Damit Windows selbst einwandfrei funktioniert, benötigen Sie lediglich "% SystemRoot% \ system32;% SystemRoot%;% SystemRoot% \ System32 \ Wbem;% SYSTEMROOT% \ System32 \ WindowsPowerShell \ v1.0". Alles andere ist Software von Drittanbietern. nVidia fügt seine Einträge beim Treiber-Update erneut hinzu und funktioniert auch ohne. Pfadbezogene Probleme sind selten und in der Regel offensichtlich. Sie können sie daher von Fall zu Fall behandeln. Über den Ausbau Pfad : Verwendung PathMan.exe aus Resource Kit . Aber bedenken Grenzen superuser.com/a/387625
LogicDaemon

Antworten:

3

PATH wird in der Registry gespeichert an

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

Wenn Sie über Systemwiederherstellungspunkte verfügen, können Sie den entsprechenden Schlüssel finden und wiederherstellen .

Sir Adelaide
quelle
2
In der Regel gibt es mehrere "ControlSetXXX" -Registrierungsschlüssel, von denen der erwähnte CurrentControlSet-Schlüssel einer ist. Es sind keine Wiederherstellungspunkte erforderlich, um sie nur anzusehen.
Kreemoweet
0

Ich habe nicht genug Ruf, um hier einen Kommentar abzugeben, aber @ kreemoweets Kommentar - leider hat Windows 10 (und ich glaube auch 8 / 8.1) die Option "Letzte bekannte gute Konfiguration" und die zugehörigen Sicherungen deaktiviert, die früher wiederhergestellt werden konnten (das ControlSet ###, von dem Sie sprechen). Dieses Verhalten kann über einen Reg-Fix wieder aktiviert werden. Wenn der Benutzer dies jedoch nicht manuell getan hat, ist es sehr wahrscheinlich, dass er beim Durchsuchen der Registrierung nur einen Kontrollsatz findet (bei dem es sich tatsächlich um das CurrentControlSet handelt). Daher ist hier möglicherweise eine Systemwiederherstellung angebracht.

Falls jemand anderes darauf stößt, können Sie die ControlSet ### -Sicherungen in der Registrierung erneut aktivieren, indem Sie einen Registrierungswert hinzufügen:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Configuration Manager

Name: BackupCount
Type: DWORD
Value: 1 = store one backup in registry (one "last known good config")
    2 = store two backups in registry (two "last known good configs")

Das Obige aktiviert die ControlSet ### -Sicherungen. Wenn Sie dann auch die Option "Letzte bekannte gute Konfiguration" im (alten) Startmenü aktivieren möchten (die meiner Meinung nach auch in Win8 / 8.1 wieder aktiviert werden müsste, damit diese Option tatsächlich angezeigt wird), sind Sie muss hinzufügen:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Configuration Manager\LastKnownGood

Name: Enabled
Type: DWORD
Value: 1 = enabled
    0 = disabled
dwillis77
quelle