|
전에도 답변해 주신분 맞죠?
감사합니다.
답변해 주신 내용 가지고 열심히 알아보겠습니다.
행복하세요. ^^;
임문환.실업자 님이 쓰신 글 :
: 핸들맨 님이 쓰신 글 :
: : 몇 일전에 질문한 내용의 답변을 보려 왔는데
: : 서버 이상이 있으면서 답변 데이터까지 유실된거 같더군요.
: : 어떤 분께서 답변을 달아주셨던데 아깝게도 볼 수가 없습니다.
: : 번거롭더라도 한 번 더 부탁합니다.
: : 감사합니다.
: : 그럼..
:
: 헤더 파일들을 보면 아래와 같습니다.
:
: 1. STRICT 정의 여부와는 상관 없이 HANDLE은 void* 형입니다.
: 2. STRICT가 정의되어 있지 않으면 HWND는 HANDLE과 같은 void* 형입니다.
: 정의되어 있으면 HWND는 아래와 같은 형이 됩니다.
: struct HWND__
: {
: int unused;
: };
: typedef HWND__ *HWND;
: 즉 HWND는 HWND__ 구조체를 가리키는 포인터 형이 됩니다.
:
:
:
: 헤더 파일들의 내용:
:
: __property HWND Handle = {read=GetHandle, nodefault};
:
:
:
: typedef void *PVOID;
:
: #ifdef STRICT
: typedef void *HANDLE;
: #define DECLARE_HANDLE(name) struct name##__ { int unused; }; typedef struct name##__ *name
: #else
: typedef PVOID HANDLE;
: #define DECLARE_HANDLE(name) typedef HANDLE name
: #endif
: typedef HANDLE *PHANDLE;
:
:
: #ifndef WIN_INTERNAL
: DECLARE_HANDLE (HWND);
: DECLARE_HANDLE (HHOOK);
: #ifdef WINABLE
: DECLARE_HANDLE (HEVENT);
: #endif
: #endif
:
:
|