PATH'deki Ortam Değişkenleri Yönetici Olmayan Komut İstemi için Genişletilmedi mi?


11

Komut İstemi normal bir kullanıcı tarafından çalıştırıldığında, ortam değişkenlerini genişletemeyen bir Windows 7 makinem var %PATH%. Komut istemi bunun yerine yönetici olarak çalıştırılırsa (sağ tıklama, Yönetici olarak çalıştır ) %PATH%uygun şekilde genişletilir.

Spesifik olarak, %PATH%için cmd.exe(yoluyla görüntülenen kullanıcı çalışma set pathaşağıdaki gibi):

Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\Wbem;%SYSTEMROOT\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft Windows Performance Toolkit\

... Yönetici olarak çalıştırmak %PATH%için cmd.exeise şu şekildedir:

Path=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\Wbem;%SYSTEMROOT\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft Windows Performance Toolkit\

Yeni bir profil oluşturmak için yeni bir kullanıcı olarak giriş yapmayı denedim ve sorun bu profilde de devam ediyor. HKEY_CURRENT_USER\Environment\PATHmevcut değildir ve HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PathBilgisayar Özellikleri -> Ortam Değişkenleri'nde tanımlanan sistem çapında yolla eşleşir.

Bunun ne olabileceği veya nereye bakabileceğim konusunda bir fikri olan var mı?

Yanıtlar:


8

Deneyebileceğim iki şey var.

  1. Bunun sfc /scannow, oyundaki daha büyük sorunları düzeltip düzeltmediğini görmek için bir komutunu çalıştırın.
  2. PathAnahtar için kayıt defterine bakın HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment. Ne tür . SöylemeliREG_EXPAND_SZ

Öyleydi. Normal bir makineyi alıp REG_SZsoruna ayarlarsam, geri ayarlarsam makineye REG_EXPAND_SZsabitlenir.
Steve Vigneau

@Steve - Tatlı! Bununla ilgili bir şeyler bile öğrendim :)
Nixphoe

1
Fakat merak ederim. Neden bu env değişkenleri kayıt defterinde yanlış değer türüyle oluşturur? Daha önce bu sorunu yaşadığımı hatırlamıyorum, Windows 8.1 Güncelleme 1 kullanıyorum ve bu sorun XP'de bile olabilir gibi görünüyor! support.microsoft.com/kb/329308
Adrián Pérez

0

Maven'i yapılandırmaya çalışırken de aynı sorunla karşılaştım ...

Bu konuyu Superuser'da bu konuya biraz ışık tutan buldum , ama benim için işe yaramadı. Sorun, yönetici kabuğunun işe yarayacağı için hak yükseltmesi ile ilgili gibi görünüyordu, ancak bir kullanıcı kabuğu işe yaramadı. Sonunda sadece kullanıcı değişkenlerini sistem değişkenleri olarak yeniden oluşturmaya ve bunları global yola eklemeye karar verdim.

Bu birkaç değişken için çalıştı, ancak hala genişlemeyen bir çiftim vardı. Onları birkaç kez yeni isimlerle yeniden yarattım, boşuna. Ancak, UAC'yi devre dışı bıraktıktan, yeniden başlattıktan, UAC'yi yeniden etkinleştirdikten ve yeniden başlattıktan sonra değişkenler son olarak kullanıcı kabuğunda doğru şekilde genişledi.


0

Çok benzer bir sorunum vardı - basit çözüm yol tanımındaki takma addan sonra noktalı virgül eklemekti .

Uzun Hikaye:

Bu node.jsyüzden bir kullanıcı ortamı değişkeni ile tanımlanan bir NODE_HOME takma adı kullanıyorum . Daha sonra bu diğer adı PATH ortam değişkenime eklerim .

Ne buldum, bir yeniden önyükleme sonra kabuk NODE_HOME yolunu kaybetti böylece npmvb işe yaramaz. Neler oluyor?

İncelemede, NODE_HOME'un ayarlandığını, ancak sihirli bir şekilde noktalı virgül aldığını görüyorum .

C:\Users\ob>echo %NODE_HOME%
C:\Users\ob\node-8.11.1;

PATH artık düğüm klasörünün genişletilmiş yolu yerine % NODE_HOME% değişmez dizesinde sona eriyor :

C:\Users\ob>echo %PATH%
C:\Program...rams\Git\cmd;%NODE_HOME%

Tamir etmek için:

İlk olarak, hatalı noktalı virgül NODE_HOME tanımının sonundan silin .

İkinci olarak, PATH tanımındaki NODE_HOME sembolünden sonra noktalı virgül ekleyin :

C:\Program...rams\Git\cmd;%NODE_HOME%;

Şimdi yeni bir kabuk başlatmak ve PATH genişletmek , NODE_HOME bulur :

C:\Users\ob>echo %PATH%
C:\Program...ams\Git\cmd;C:\Users\tkobo\Installations\node-8.11.1;

Ve npmtekrar çalışıyor!


-1

SORUN : Sizi doğru anladığım için sorunum sadece sinilardı. "Yolum" içeriyordu ...;% ANT_HOME% \ bin; ... ANT_HOME değişkenini Sistem (kullanıcı değil) Değişkenleri altında doğru şekilde ayarladım ve CMD -> SET "echo% ANT_HOME%" ile aynı olarak doğru yazdırdı .

ÇÖZÜM : Ben sorunu çözüldü klasörü hareketli c: \ dev \ 3 \ karınca ... için c: ** Programm Files (x86) ** \ dev \ 3 \ karınca ...

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.