다음을 통해 공유


사용자 환경 변수

환경 변수는 파일에 대한 검색 경로, 임시 파일의 디렉터리, 애플리케이션별 옵션 및 기타 유사한 정보를 지정합니다. 시스템은 각 사용자에 대한 환경 블록과 컴퓨터에 대한 환경 블록을 유지 관리합니다. 시스템 환경 블록은 특정 컴퓨터의 모든 사용자에 대한 환경 변수를 나타냅니다. 사용자의 환경 블록은 시스템 환경 변수 집합을 포함하여 시스템이 특정 사용자에 대해 유지 관리하는 환경 변수를 나타냅니다.

기본적으로 각 프로세스는 부모 프로세스에 대한 환경 블록의 복사본을 받습니다. 일반적으로 로그온한 사용자의 환경 블록입니다. 프로세스는 CreateProcess 또는 CreateProcessAsUser 함수를 사용하여 자식 프로세스에 대해 다른 환경 블록을 지정할 수 있습니다 .

환경 변수를 추가하거나 수정하려면 사용자가 제어판시스템을 선택한 다음 환경 탭을 선택합니다. 사용자는 set 명령을 사용하여 명령 프롬프트에서 환경 변수를 추가하거나 수정할 수도 있습니다. set 명령을 사용하여 만든 환경 변수는 설정된 명령 창 및 해당 자식 프로세스에만 적용됩니다. 자세한 내용은 명령 프롬프트에 set /? 를 입력합니다.

지정된 사용자에 대한 환경 블록의 복사본을 검색하려면 CreateEnvironmentBlock 함수를 사용합니다. CreateEnvironmentBlock에서 만든 환경 블록을 해제하려면 DestroyEnvironmentBlock 함수를 사용합니다. 이러한 함수는 환경 블록에 대한 포인터를 참조합니다. 환경 블록은 null로 끝나는 유니코드 문자열의 배열입니다. 목록은 두 개의 null(\0\0)로 끝납니다.

지정된 사용자에 대한 환경 블록을 사용하여 환경 변수가 포함된 문자열을 확장하려면 ExpandEnvironmentStringsForUser 함수를 사용합니다.