Brakujące zmienne środowiskowe w Windows 7 [duplikat]

9

Kiedy ponownie uruchamiam komputer, wszystko jest eleganckie. Następnie po kilku godzinach aplikacje, takie jak Visual Studio, Notepad ++, gry, iTunes, składniki systemu Windows (monit Cmd, Explorer itp.) Itp. Przestają działać z błędami dotyczącymi brakujących plików lub nieprawidłowej instalacji.

Odkryłem, że jeśli przejdę do Cmd.exe i uruchomię go bezpośrednio (zamiast z linku menu), to mogę go uruchomić, a zmiennej środowiskowej WinDir i innych brakuje (co wyjaśnia, dlaczego nie mogę uruchomić Cmd.exe ze skrótu, ponieważ używa on ścieżki% WinDir% \ System32), a ścieżka systemowa jest ustawiona na (NULL).

Kiedy przechodzę do Zaawansowanych ustawień systemu (ponownie ręcznie eksplorując SystemPropertiesAdvanced.exe), wszystkie zmienne środowiskowe nadal tam są. Sprawdziłem wykorzystanie pamięci i mam 1 z 6 Gig za darmo, z moim szczytem Commit Charge również poniżej limitu (około 30%).

Schowek również przestaje działać.

Nie uruchamiam nic egzotycznego, chociaż mam wiele otwartych kart Chrome. Uruchamianie Backblaze do tworzenia kopii zapasowych, Microsoft Security Essentials i różnych innych narzędzi. Zamykanie rzeczy pojedynczo nie wydawało się to naprawić.

Robi się coraz gorzej (dzieje się to coraz szybciej). Chciałbym wiedzieć, co go powoduje bez ponownej instalacji.

Z systemem Windows 7 Ultimate 64-bit

Jim McKeeth
źródło
Dzieje się tak za każdym razem, gdy uruchamiasz komputer i pracujesz przez chwilę?
Synetech 24.01.11
1
@ Synetech: Ostatnio dzieje się to za każdym razem, ale nie po tym samym czasie. Nie odkryłem jeszcze wzoru, spodziewaj się, że frustruje mnie, dopóki nie uruchomię się ponownie.
Jim McKeeth
Czy to może być wyciek rączki? Czy sprawdziłeś menedżera zadań i włączyłeś odpowiednie kolumny na karcie procesu, aby sprawdzić, czy któryś z procesów pochłania wszystkie twoje uchwyty?
Lasse V. Karlsen
Mam ten sam problem, gdy brakuje większości moich zmiennych środowiskowych. Wydaje się, że występuje dopiero po przebudzeniu mojego systemu. Korzystam z systemu Windows 7 Enterprise w wersji 32-bitowej w domenie.
W grudniu zacząłem widzieć te same objawy na 64-bitowym systemie Vista. Mój komputer może działać przez kilka dni, zanim to nastąpi, i muszę ponownie uruchomić komputer. Program antywirusowy Kaspersky nie znalazł problemu. Zgłoszono również tutaj: [ superuser.com/questions/355594/…
Lee

Odpowiedzi:

8

Walczyłem z tym samym problemem. Objawy:

  • restart: wszystko OK
  • po pewnym czasie: programy wydają się tracić %windir%zmienną środowiskową i dlatego zaczynają się psuć

W moim przypadku miałem trochę duży %PATH%, więc skasowałem wiele wpisów z PATH i zostało to naprawione . Nie jestem pewien, jak duży PATHmoże czyścić, WINDIRale wydawało się, że to naprawił.

Wpływ poprawki nie jest natychmiastowy (musisz zrestartować lub ponownie uruchomić Eksploratora), ale mogę to zweryfikować za pomocą menedżera zadań, aby zabić explorer.exe i otworzyć go ponownie (unikając w ten sposób ponownego uruchomienia). Menedżer zadań dziedziczy zmienne środowiskowe z winlogon, podczas gdy eksplorator procesów wydaje się dziedziczyć je z dowolnego procesu, który go uruchomił, więc może utrzymać problem z dużymi środowiskami, nawet jeśli je zmieniłeś.

Miguel Ventura
źródło
1
To załatwiło sprawę. Niedawno zainstalowałem program, który na mojej ścieżce zawierał mnóstwo rzeczy. Po usunięciu tych wpisów wszystko znów zaczęło działać.
Eric Milas,
2

Miałem także bardzo długą zmienną środowiskową% PATH%. Jako inżynier oprogramowania zazwyczaj mam regularnie instalowanych i usuwanych z mojego komputera kilka aplikacji. Niektóre aplikacje często wstawiają wpis rozdzielany średnikiem do zmiennej środowiskowej% PATH%, zwykle jeśli istnieje możliwość, że zainstalowana aplikacja uruchomi się z wiersza poleceń (cmd.exe), ponieważ nie jestem zbytnio zainteresowany które aplikacje będą wykonywać ze standardowego wiersza poleceń, wycofałem wszystkie wpisy ze zmiennej% PATH% oprócz C: \ Windows \ System32 (miejsce, z którego będzie uruchamiana większość „cmdletów”. Nieco więcej informacji może można znaleźć w temacie na wiki-pedia @ http://en.wikipedia.org/wiki/PATH_(variable) Aby uzyskać szybką poprawkę (Windows 7), wykonaj następujące czynności:

1.) Kliknij przycisk Start, w polu wyszukiwania u dołu menu skopiuj i wklej lub wpisz następujące polecenie, aby otworzyć okno Zaawansowane właściwości systemu C: \ Windows \ System32 \ SystemPropertiesAdvanced.exe (naciśnij klawisz Enter)

2.) Kliknij przycisk Zmienne środowiskowe w dolnej części okna tuż nad ok, anuluj i zastosuj klaster.

3.) Teraz powinno zostać wyświetlone okno Zmienne środowiskowe. W drugim polu listy na ekranie z tekstem nagłówka (Zmienne systemowe) poszukaj słowa Ścieżka pod kolumną Zmienna i kliknij dwukrotnie.

4.) Powinieneś patrzeć na to, co wydaje się być listą katalogów na twoim komputerze, które są oddzielone przez; ogranicznik. Uważnie uważaj, niektórzy mogą chcieć, a niektórzy zastanawiają się, dlaczego oni są obecni, oczyść tyle ścieżek, ile pragnie twoje serce, chodzi tutaj o skrócenie ścieżki tak, jak ci się podoba, znowu skróciłem moją do C: \ WINDOWS \ system32 i od tego czasu nie wystąpiły żadne problemy.

5.) Po zakończeniu edycji zmiennej Path kliknij „Ok” we wszystkich otwartych oknach dialogowych.

6.) Ponownie kliknij przycisk Start, w dolnym pasku wyszukiwania wpisz taskmgr i naciśnij klawisz Enter na klawiaturze.

7.) Kliknij kartę „Procesy” i zlokalizuj proces „Explorer.exe” w kolumnie „Nazwa obrazu” siatki procesów. Kliknij proces raz, aby go podświetlić, a następnie kliknij przycisk „Zakończ proces”.

8.) Kliknij Plik (jeśli go nie widzisz, najpierw naciśnij klawisz Alt), kliknij pozycję podmenu pod plikiem „Nowe zadanie (Uruchom)”

9.) W wyświetlonym polu wprowadzania wpisz explorer i naciśnij enter lub kliknij ok.

Przetestuj swoje zepsute linki / skróty, aby sprawdzić, czy teraz działają.

DeepGeek
źródło
1

Zgodnie z sugestią Per Lasse V. Karlsena, następnym razem szukałem naprawdę dużej liczby uchwytów. Audacity miało ich 41 tys., A ostatnio też była raczej niestabilna. Niestety mam najnowszą wersję (1.3.12), a zamknięcie jej nie wydaje się odzyskiwać wszystkich uchwytów. Złożę raport o błędzie.

UWAGA : Podczas gdy Audacity przeciekała uchwyty, nie wydaje się, aby była to jedyna przyczyna mojego bólu głowy. Wciąż mam problemy i nie korzystałem z Audacity od momentu ponownego uruchomienia. Może być czas na ponowną instalację.

Skończyłem ponowną instalację przed znalezieniem poprawki.

Jim McKeeth
źródło
0

Mam podobne objawy, ale moja zmienna PATH nie była zbyt długa. Myślę więc, że dobrze jest podzielić się z nami swoimi doświadczeniami:

Instalowałem rozszerzenie Visual Studio, gdy awaria VSIXInstaller.exe. Następnie niektóre zmienne środowiskowe zniknęły (w tym% windir%). Uruchomienie programu Visual Studio było niemożliwe.

Nie wiem, dlaczego ta awaria wpłynęła na zmienne środowiskowe, ale jestem pewien, że jest on powiązany, ponieważ powtórzyłem ten scenariusz wiele razy.

Dowiedziałem się, dlaczego VSIXInstaller.exe się zawiesił i teraz wszystko idzie dobrze.

GGES
źródło
Jest to potencjalnie przydatne tylko wtedy, gdy wyjaśnisz, czego się dowiedziałeś i jak to naprawiłeś. W przeciwnym razie to nie jest odpowiedź, to komentarz „Też mam ten problem”.
fixer1234
Cześć @ fixer1234, masz rację. Oto dlaczego VSIXInstaller zawiesił się w moim scenariuszu: Stworzyłem skrypt wsadowy, aby uruchomić VSIXInstaller na 2 plikach vsix, a następnie usunąć te 2 pliki. Problem polega na tym, że VSIXInstaller jest asynchroniczny i nie jest dobrym rozwiązaniem do instalacji skryptu vsix. Mój skrypt uruchamiał 2 instalacje równolegle i usuwał pliki przed końcem. Aby obejść ten problem, stworzyłem podprogram, który czeka na zakończenie VSIXInstaller.exe. Znalazłem również alternatywę dla VSIXInstaller, ale nie próbowałem: link
GGES