(win32 api)Toolbar 버튼 클릭 메세지 보내기
안녕하세요,
Win32 API로 다른 응용프로그램의 버튼들을 클릭하는 프로그램을 만들다가 질문 드립니다.
Toolbar 내 있는 버튼을 클릭하고 싶어서 다음과 같이 프로그램을 작성해 보았습니다.
TBBUTTON TB_Data={0};
int btn_count= 0, i = 0;
...
// Spy++ 프로그램과 FindWindow를 통하여 Toolbar의 handle을 찾는 코드
// Toolbar handle값은 Parent_hWnd에 저장되어 있음
...
btn_count = SendMessage(Parent_hWnd, TB_BUTTONCOUNT, 0, 0);
i = SendMessage(Parent_hWnd, TB_GETBUTTON, (WPARAM)5, (LPARAM)(&TB_Data));
SendMessage(Parent_hWnd, TB_PRESSBUTTON, (WPARAM)TB_Data.idCommand, (LPARAM)TRUE);
SendMessage(Parent_hWnd, TB_PRESSBUTTON, (WPARAM)TB_Data.idCommand, (LPARAM)FALSE);
이렇게 작성했는데 정상 동작이 안되네요.
SendMessage(..,TB_GETBUTTON, 5, &TB_Data);
여기 부분이 5번째 버튼의 정보를 TB_Data에다가 저장하겠다라고 이해하고 작성한건데, 일단 i 값은 1이 나왔는데 TB_Data에 올바른 값이 들어가 있는 것 처럼 보이지 않습니다.
물론, SendMessage(..,TB_PRESSBUTTON, ..) 도 동작이 되지 않습니다.
혹시 잘못된 부분이나 잘못 알고 있는 부분이 있다면 조언 좀 부탁 드립니다.
아무리 찾아봐도 해결방법을 찾을 수가 없네요....ㅠㅠ
댓글 달기