본문 바로가기

Windows/_System Programming

환경변수

환경변수 :

컴퓨터에서 동작하는 방식에 영향을 미치는 동적인 값.

프로세스별로 별도의 메모리 공간에 저장하고 관리하는 데이터.
(key = value 의 형태)


윈도우즈의 환경변수

1. 기본 제공 시스템 변수
2. HKEY_LOCAL_MACHINE 하이브에 있는 시스템 변수
3. HKEY_CURRENT_USER 하이브에 있는 로컬 변수
4. 모든 환경 변수 및 Autoexec.bat 파일에서 설정된 경로
5. 모든 환경 변수 및 로그온 스크립트에서 설정된 경로
6. 스크립트 또는 배치 파일과 상호 작용하는 변수



함수를 통한 환경변수 :

환경변수 등록 :

BOOL SetEnvironmentVariable(
         LPCTSTR lpName,           // key 에 해당하는 값
         LPCTSTR lpValue            // value 에 해당하는 값
);

환경변수 참조 :

DWORD GetEnvironmentVariable(
        LPCTSTR lpName,           // key 를 전달, key 에 해당하는 value 를 얻게 된다
        LPCTSTR lpBuffer,           // value 값 저장하기 위한 메모리의 주소 지정
        DWORD nSize                  // lpBuffer 가 가리키는 메모리의 크기를 지정
); 

성공시 lpBuffer 에 저장된 문자열의 길이를 리턴



내컴퓨터 속성을 통한 환경변수 :

내컴퓨터 -> 우클릭 -> 속성




사용자 변수와 시스템 변수를 생성, 관리할 수 있다.