WINDIR 환경 변수는 C:\windows가 아닌 %SystemRoot%로 확인됩니다.

WINDIR 환경 변수는 C:\windows가 아닌 %SystemRoot%로 확인됩니다.

얼마 전 WINDIR작업 중이던 레거시 프로그램에서 무언가를 테스트하기 위해 환경 변수를 수동으로 변경했습니다(데스크톱이 아닌 VM에서 이 작업을 수행했어야 했지만 지금은 너무 늦었습니다).

따라서 어떤 이유로 인해 이제는 %WINDIR%더 이상 c:\windows로 확인되지 않고 %SystemRoot%로 확인됩니다. 명령줄에서:

echo %WINDIR% outputs %SystemRoot%

그리고

echo %SystemRoot% outputs C:\windows

WINDIR을 해결할 수 없으면 온갖 종류의 두통이 발생합니다. 해당 콘솔 창에서 제공하는 값을 WINDIR명시적으로 설정하려고 시도했지만 c:\windows아무 소용이 없습니다. 또한 다음 위치에서 windir 레지스트리 키 값을 수동으로 변경해 보았습니다.

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment\windier

그리고

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Session Manager\Environment\windir

그러나 여전히 운이 좋지는 않습니다. 전에 이런 행동을 본 사람이 있나요?

이것이 Windows 7 Enterprise ed에 있다는 것을 언급하는 것을 잊었습니다.

답변1

로 갖고 있는 값의 종류를 확인하세요 Windir. 아마도 실수로 에서 로 변경했을 것 REG_EXPAND_SZ입니다 REG_SZ. 레지스트리에서 직접 수행해야 합니다(GUI 패널에는 차이점이 표시되지 않습니다).

레지스트리 편집기를 시작하고 로 이동합니다 HKEY_LOCAL_MACHINE\system\currentControlSet\Control\Session Manager\Environment. 유형이 있는지
확인하세요 . 그렇지 않은 경우 다음과 같이 항목을 다시 만듭니다. windirREG_EXPAND_SZ
windir REG_EXPAND_SZ %SystemRoot%

로그오프/로그온하고 작동하는지 확인하세요.

답변2

보정!%SystemRoot%기본값입니다. 따라서 이 변수는 시스템에서 올바르게 설정됩니다.

여기에 이미지 설명을 입력하세요

마우스 오른쪽 버튼을 클릭하세요.컴퓨터 - 설정 - 고급 시스템 설정 - 고급 - 환경 변수. 해당 창의 두 번째 부분(환경 변수 아래)에서 변수를 찾을 수 있습니다.윈디르가리키는%systemroot%. 다음으로 변경하세요.%SystemRoot%이는 기본값이며 여전히 오류가 발생하는지 테스트합니다.

관련 정보