핸들(handle)

Win32 API 2014. 2. 12. 16:01
728x90

핸들이란. 어떤 대상에 붙여지는 번호를 말한다.

문법적으로는 32비트의 정수값이다.

 

도스에서는 거의 유일하게 파일 핸들만이 사용되었었다.

그러나 윈도우즈에서는 여러가지 종류의 핸들이 사용되고 있다.

 

윈도우즈에서는 핸들을 많이 사용하므로 핸들의 일반적인 특성에 관해서 숙지하는 것이 좋다.

 

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

 

2. 핸들은 운영체제가 발급해 준다, 사용자는 그저 쓰기만 하면 된다. 예로써 윈도우를 만들거나 파일을 열면 운영체제는 만들어진 윈도우나 열려진 파일에 핸들을 붙인다. 사용자는 이 핸들을 보관해 두었다가 해당 윈도우나 파일을 다시 참조할 때 핸들을 사용하면 된다.

직접 사용자가 핸들을 만드는경우는 없다.

 

3. 같은 종류의 핸들끼리는 절대로 중복된 값을 가지지 않는다. 만약 이렇게 되면 핸들은 구분을 위해 사용할수 없게 될 것이다. 단 다른 종류의 핸들끼리는 중복된 값을 가질 수 도 있다.

 

4. 핸들은 정수형이므로 값을 가지지만 그 실제값이 무엇인지는 몰라도 상관이 없다. 핸들은 크고 작음의 성질을 가지는 숫자가 아니다.

단순한 표시역할을 할 뿐이다. 핸들형 변수를 만들어 핸들을 대입받아 쓰고 난 후에는 버리면 된다.

 

윈도우즈에서 핸들은 예외없이 접두어 h로 시작되며 핸들값을 저장하기 위해 별도의 데이터형까지 정의해 두고 있다.

HWND,HPEN,HBRUSH,HDC 등이 핸들을 담기 위한 데이터형들이며 모두 부호없는 정수형이다.

728x90

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

변수 명명법  (0) 2014.02.12
윈도우즈의 장점.  (0) 2014.02.12
win32 api 모르는것 정리中  (0) 2014.02.10
Posted by 정망스
,


맨 위로
홈으로 ▲위로 ▼아래로 ♥댓글쓰기 새로고침