지난 주 오류 피드백
초기화 코드를 수행하는 Plugininit() 함수 부분에서, Log Window에 문자열을 출력하기 위한 Addtolist가 ‘함수에서 참조되는 확인할 수 없는 외부 기호’ 라는 오류 발생
->해당 부분(Addtolist)은 MessageBox로 대체하여 작성하였음
ODBG_Plugindata() / ODBG_Plugininit() 결과 화면
ODBG_Plugininit 함수 : 초기화 코드를 수행.
메뉴 작성 - ODBG_Pluginmenu()
현재 상태로는 Plugin 메뉴를 눌렀을 때 바로 “HelloOlly” 메뉴가 선택돼 버리기 때문에 여러 가지 기능에 대한 처리를 할 수가 없음, 따라서 다음으로 이 부분에 대한 하위메뉴를 작성하는 작업과 추가적으로 마우스 오른쪽 버튼을 눌렀을 때 나타나는 팝업 메뉴를 작성할 예정임
PDK에서 메뉴 작성은 ODBG_Pluginmenu() 함수를 이용해 만들 수 있음
ODBG_Pluginmenu()에 들어오는 첫 번째 인자로는 case 문을 (메인 메뉴/팝업 메뉴 선택),. 두 번째 인자에는 아웃버퍼로 메뉴 이름을 기입하는 작업을 하면 기본적인 골격이 완성됨
메뉴 작성 - ODBG_Pluginmenu() 코드 발췌
PM_MAIN : 메인 메뉴
PM_DISASM : CPU 윈도우에서의 팝업 메뉴
PM_THREADS : 스레드 윈도우에서의 팝업 메뉴
메뉴 작성 - ODBG_Pluginmenu() 실행화면
오류 발생 부분
->일단 Getstatus 있는 부분을 주석처리 한 채로 빌드하여 위의 메뉴 작성 실행 결과 확인하였음
'4-8. 2021-1 심화 스터디 > 리버싱을 활용한 디버거 플러그인 개발' 카테고리의 다른 글
[2021.05.15]리버싱을 활용한 디버거 플러그인 개발5 (0) | 2021.05.15 |
---|---|
[2021.05.08]리버싱을 활용한 디버거 플러그인 개발4 (0) | 2021.05.08 |
[2021.05.01]리버싱을 활용한 디버거 플러그인 개발3 (0) | 2021.05.01 |
[2021.03.20] 리버싱을 활용한 디버거 플러그인 개발 1 (0) | 2021.03.20 |
[2021.3.13] 디버거 플러그인 개발 프로젝트 관련 개념 (0) | 2021.03.13 |