되는대로 살자

[API] 핸들이란? 본문

2009~2014/Windows_API

[API] 핸들이란?

malu 2011. 6. 20. 18:05
정의: 구체적인 어떤 대상에 붙여진 번호이며 문법적으로는 32비트의 정수값이다.

핸들을 배우는 이유: 도스 프로그래밍에서는 핸들이 유일하게 파일핸들만이 사용되었으나 윈도우즈에서는 여러가지 종류의 핸들이 사용되기 때문이다.
EX) 논리적 펜, 브러시, 메모리

핸들의 특징
1. 핸들은 정수값이며 대부분의 경우 32 비트값이다. 핸들을 사용하는 목적은 오로지 구분을 위한 것이므로 핸들끼리 중복되지 않아야 하며 이런 목적으로는 정수형이 가장 적합하다.

2. 핸들은 운영체제가 발급해주며 사용자는 쓰기만 하면 된다. 예를들어 윈도우를 만들거나 파일을 열면 운영체제는 만들어진 윈도우나 열려진 파일에 핸들을 붙여준다. 사용자는 이 핸들을 잘 보관해 두었다가 해당 윈도우나 파일을 다시 참조할 때 핸들을 사용하면 된다. 사용자가 직접 핸들을 만들 경우란 없다.

핸들의 표시: 윈도우즈에서 핸들은 접두어 H로 사용되며 핸들을 저장하기 위한 별도의 데이터형이 존재
EX) HWND, HPEN,HBRUSH,HDC 등