C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[19862] [질문:hooking 관련] WM_NCPAINT 메시지를 후킹하려고 합니다..
DAK [] 1748 읽음    2002-07-05 19:00
안녕하세요...
WM_NCPAINT 메세지를 후킹하려고 합니다...
그래서..WH_GETMESSAGE 타입에 대해서 hook을 설정했습니다...
프로시저에 해당하는 부분은 다음과 같습니다..

LRESULT CALLBACK GetMsgProc(int nCode, WPARAM wParam, LPARAM lParam)
{
    HWND hSend;
    MSG *msg;

    if (nCode < 0)
        return CallNextHookEx(hHook, nCode,wParam, lParam);

    switch (nCode)
    {
        case HC_ACTION:
            switch (wParam)
            {
                case PM_REMOVE:
                    msg = (MSG *)lParam;
                    if(msg->message == WM_NCPAINT)
                    {
                      MessageBox(NULL, "ncpaint", "hehehe", MB_OK);
                    }
                    break;

                case PM_NOREMOVE:
                    break;

                default:
                    break;
            }
        default:
            break;
    }

    return CallNextHookEx(hHook, nCode, wParam, lParam);
}

그리고 훅은 이렇게 걸었습니다..
HOOK hHook;
hHook = SetWindowsHookEx(WH_GETMESSAGE, (HOOKPROC)GetMsgProc, NULL, GetCurrentThreadId());

WM_PAINT 메세지도 hooking 되는 것을 확인해 봤고..
키보드나 마우스 메시지도 같은 방법으로 잘 되었습니다...
(같은 방법이라고 한 것은..
프로시저에서 if(msg->message == WM_NCPAINT) 이 부분을 해당 메시지로 바꾼 경우입니다...)
그런데 WM_NCPAINT는 처리가 안되는군요...

도움을 부탁드립니다..
감사합니다.. 좋은 하루 되세요! ^^

+ -

관련 글 리스트
19862 [질문:hooking 관련] WM_NCPAINT 메시지를 후킹하려고 합니다.. DAK 1748 2002/07/05
19895     Re:[질문:hooking 관련] WM_NCPAINT 메시지를 후킹하려고 합니다.. 유영인.Chris 1762 2002/07/07
19906         Re:Re:[질문:hooking 관련] WM_NCPAINT 메시지를 후킹하려고 합니다.. DAK 1233 2002/07/07
19924             Re:Re:Re:[질문:hooking 관련] WM_NCPAINT 메시지를 후킹하려고 합니다.. 유영인.Chris 1471 2002/07/08
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.