Zobacz aktualizacje 3 i 4 poniżej, jak ewoluował problem
Mój komputer (Windows 7 x64, Lenovo Thinkpad T530) ma problem z rozwiązaniem% windir%. Po uruchomieniu wszystko działa dobrze. W pewnym momencie komputer nagle nie może rozpoznać% windir%.
Sprawdzanie okna zmiennych środowiskowych pokazuje, że jest zdefiniowane.
Sprawdzanie rejestru pokazuje również, że jest on również zdefiniowany. Właściwie usunąłem klucz i wprowadziłem go ponownie bezskutecznie.
Po ponownym uruchomieniu wszystko działa przez chwilę dobrze. Czy ktoś ma jakieś przemyślenia na temat czegoś innego, co mogę sprawdzić?
Aktualizacja 1: Po zastanowieniu się nad tym, odinstalowałem sterownik / program Konica Minolta Pagebox, który został zainstalowany mniej więcej w momencie pojawienia się tego problemu (patrz komentarze poniżej). Problem pojawia się w ciągu około 4-24 godzin (nigdy go nie mierzyłem), więc po tym dokonam aktualizacji.
Aktualizacja 2: Problem nadal występuje. Wróciłem z lunchu i nie można znaleźć% windir%. Zrobiłem test po ponownym uruchomieniu komputera dziś rano i położyłem komputer do uśpienia, a potem go obudziłem. % windir% było nadal definiowane po przebudzeniu.
Aktualizacja 3:
Per Daniel w komentarzach pobiegłem set
przed błędem i po nim i porównałem wyniki. Pierwszą rzeczą, którą zauważyłem, jest to, że przy nowym rozruchu mój % path% ma ponad 2000 znaków . Skróciłem go do ~ 375 znaków i zweryfikowałem w nowym oknie cmd. Uruchomiłem ponownie, ponownie sprawdziłem ścieżkę i wróciłem do ponad 2000 znaków (pasowało do tego, co pierwotnie widziałem). Ponownie go skróciłem i ponownie uruchomiłem ponownie i to samo się stało. Usunąłem zmienną ścieżki i utworzyłem nową; to samo się stało. W tym momencie mogę jedynie stwierdzić, że nie mogę trwale zmienić ścieżki LUB ścieżka jest resetowana przez jakiś proces podczas uruchamiania. jakieś pomysły?
Aktualizacja 4:
Zedytowałem swoją ścieżkę za pomocą metody rejestru sugerowanej poniżej. Po uruchomieniu przez pewien czas sprawdziłem swoją ścieżkę, która wyrosła z tego, co wpisałem do rejestru; ma teraz kilka nowych wpisów i wiele duplikatów. Jedyne nowe wpisy pochodzą z SQL Server 2012. Poszedłem to zmienić w rejestrze i zauważyłem, że rejestr NIE pasuje do danych wyjściowych echo %path%
. Sprawdzanie zmiennych środowiskowych na karcie Właściwości zaawansowane pokazuje trzecią wersję mojej ścieżki.
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\;
Wygląda na to, że ścieżka wiersza poleceń = ścieżka rejestru + ścieżka zmiennych środowiskowych . Próbowałem ustawić ścieżkę rejestru i ścieżkę zmiennych środowiskowych na to samo i zrestartować komputer. Po ponownym uruchomieniu moja ścieżka jest teraz podwojona, w zasadzie dwie powyższe kopie ścieżki rejestru obok siebie.
Jeszcze raz jakieś myśli?
Aktualizacja 5: po rozmowie z kierownikiem IT mówi, że walczy z podobnym problemem na innym komputerze. Oba komputery mają dyski SSD (wydaje się, że to jedyny wspólny czynnik). To może, ale nie musi być istotne.
set
abywindir
ręcznie przypisać wartość, i powtórzecho
ponownie - sprawdź, czy da to wynik, czy nie. Jeśli tak się stanie, to coś się nie zgadza ze zmiennymi env - jeśli nie, to coś jest nie tak z poleceniem powłoki i / lub echo.Odpowiedzi:
Miałem ten sam problem i jako pierwsze znalazłem to pytanie. Jednak prawdziwa przyczyna / rozwiązanie nie jest jeszcze wspomniana w tym pytaniu, ale jest tutaj wspomniana: ścieżka i zmienne środowiskowe systemu Windows 7 są uszkodzone
Podsumowanie rozwiązania: upewnij się, że twoja ścieżka ma <2048 znaków. Sprawdź zarówno zmienne użytkownika, jak i zmienne systemowe.
źródło
Za pomocą GUI ustaw swoją zmienną % windir% na % SystemRoot% .
Jeśli chodzi o% path%, możesz to rozwiązać za pomocą Edytora rejestru:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
Path (REG_EXPAND_SZ)
źródło
Miałem ten sam problem w moim Lenovo TS530. Zaczęło się to pojawiać po zainstalowaniu nowych programów, które spowodowały, że moja ścieżka była nawet znacznie dłuższa niż poprzednio i dlatego instalatorzy dodali nowe rzeczy na początku definicji ścieżki . Edytowałem ścieżkę w regedt , przenosząc% SystemRoot% na początek definicji ścieżki.
Ponadto edytowałem zmienną środowiskową windir z
do
Wydaje się, że to rozwiązało problem. (Możliwe, że wcześniej pomyliłem się z odwrotnym ukośnikiem, próbując naprawić problem. Alternatywnie instalator go zmienił.)
źródło
/
zamiast\
.Miałem ten sam problem. Został on rozwiązany, kiedy usunięte zmiennej środowiskowej PATH (po wykonaniu kopii zapasowej jego zawartość) w oknie dialogowym następujące.
Później zrekonstruowałem zmienną PATH jeden po drugim. Przeniosłem część zawartości PATH, która nie mieściła się w zmiennych systemowych do zmiennych PATH użytkownika.
źródło
Jak już wspomniano @ Pieter-Jan Busschaert, najprawdopodobniej jest to spowodowane uszkodzoną lub zbyt długą
PATH
zmienną środowiskową.Najłatwiejszym sposobem rozwiązania tego problemu jest pobranie programu Rapid Environment Editor . Pokazuje, co jest nie tak z Twoimi
PATH
ustawieniami i pozwala to naprawić od razu.źródło
Przekonałem się (konsekwentnie), że tak się stanie, jeśli SQL Server 2012 lub nowsze wersje zostaną zainstalowane na komputerze z systemem Windows 7 (nie jestem pewien, czy problem występuje również w Win8.x lub Win10), ale znalazłem rozwiązanie utwórz również zmienną środowiskową windir w bieżącym kontekście użytkownika, aby ustawić wartość% SystemRoot%. Widzimy to tylko raz, gdy RDP'ing (sesja zdalna) do stacji roboczych. Gdybyśmy zalogowali się do konsoli, w ogóle byśmy się nie spotkali. Nie wiem, czy komponenty SQL 2012 (lub nowsze) zostały zainstalowane na twoim komputerze tuż przed tym, czy nie, ale możesz wypróbować tę rozdzielczość.
źródło
Nasze biuro pomocy dało mi tę odpowiedź:
Działa, biorąc pod uwagę dwie różne rzeczy:
1.) Ten problem nie istnieje, ponieważ ten program wymaga% windir do poprawnego działania. Zamiast tego uruchom C: \ Windows \ System32 \ UserAccountControlSettings w wierszu polecenia.
2.) Wolisz nie mieć ostrzeżeń bezpieczeństwa systemu Windows.
źródło
Miałem ten sam problem po aktualizacji do SSD na moim Lenovo X230. Oprogramowanie, którego użyłem do migracji (Acronis TrueImage), dodało wartość ścieżki, która musiała mnie przekroczyć limit. Rozwiązałem to w następujący sposób:
Otwórz Regedit
Iść do
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
Zmodyfikuj wartość ścieżki (patrz odpowiedź użytkownika 184745 powyżej).
Wytnij bieżącą wartość i wklej do Notatnika.
Edytowano kilka zduplikowanych wartości, a także ścieżki, które wydawały się mało przydatne. Skróciłem długość ścieżki z 2283 znaków do 1517.
Wkleił nowy ciąg ścieżki do klucza ścieżki.
(Na wszelki wypadek zapisałem zawartość mojego notatnika).
Zrestartowano. Wszystko dobrze.
źródło
Sprawdź ograniczenie zmiennej path: https://support.microsoft.com/en-us/kb/2685893
źródło
Miałem te same problemy, co powyżej. % windir%. ikony nie są wyświetlane dla niektórych elementów. Każda aplikacja, która korzystała z windir ... Przejrzałem wszystkie poprawki, w tym zimny rozruch, skrócenie ścieżki itp.
Wreszcie odtworzyłem mój profil systemu Windows ... problem zniknął.
źródło