본문 바로가기

Win32 API

3. Win32 API - hInstance


1. hInstance의 정의와 사용 이유

정의

  • Handle + Instance를 지칭하는 말입니다.
  • Widnows 운영체제에서 실행 중인 프로그램을 Instance라고 지칭합니다.
  • hInstance는 프로그램을 지칭하기 위해 윈도우즈에서 관리하는 정수 값입니다.
  • 각 프로그램마다 고유의 hInstance 값을 가지고 있으므로 같은 프로그램이 여러 개 실행되도 hInstance 값은 동일합니다.

사용 이유

  • 각 프로그램들의 Instance가 자체 메모리 공간을 할당받고 서로 독립적으로 실행되기 위해서 필요합니다.
  • 여러 프로그램들이 동시에 실행될 때 충돌을 방지하고 자원을 효율적으로 관리하기 위함입니다.

2. hInstance의 사용

  • Windows 프로그램에서 프로그램이 시작될 때의 시작 함수가 WinMain 함수인데, 해당 함수의 매개변수로 hInstance값이 전달됩니다.
int APIENTRY WinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance
    , _In_ LPSTR lpszCmdParam, _In_ int nCmdShow)
{
	// ...생략
}

'Win32 API' 카테고리의 다른 글

6. Win32 API - WindowClass  (0) 2024.02.24
5. Win32 API - Event  (0) 2024.02.24
4. Win32 API - Message  (0) 2024.02.19
2. Win32 API - Handle  (0) 2024.02.19
1. Win32 API - 코딩 규칙  (0) 2024.02.19