본문 바로가기

쓰기

ATPluginFrame 을 테스트중에 발견한건데, 후킹된 프로그램을 그냥 종료할 때
OnObjectClose 및 OnPluginClose 가 불리지 않는 것 같은 인상이 있군요?

MessageBox 도 뜨지 않고 file 로 log 를 뽑아봐도 나오지 않는데.. 실제로 불리지만
프로그램이 종료되면서 미처 log 나 MessageBox 가 열리지 않는 건지도 모르겠습니다만..
답변해 주실 분은 아랄님밖에 없는 것 같아서..

그리고 저번에 ATPluginFrame 테스트 버전 말미에 아랄님께 말씀드린 것이 아직 별 답변이
없는데.. 어떻게 안 될까요?

여기 다시 적자면..
////
아랄트랜스 0.2 및 0.3 겸용으로 플러그인을 만드는 것이 가능한 것 같습니다만, 아랄트랜스 0.3의
구버전 플러그인 체크가 아마도 PreTranslate 등의 익스포트 함수의 존재여부로 체크하는 듯 해서
겸용으로 만들어도 구버전으로 인식되더군요.

그래서.. 플러그인 체크 알고리즘을 GetPluginInfo 함수가 존재하는지 여부로 바꾸실 생각은 없으신지요?
이 함수는 확실히 0.3용 플러그인에서만 존재하니까요.
////
... 였습니다;

그리고.. TRANSLATION_OBJECT 에서 알려지지 않은 부분들 (hPlugin, wszObjectOption,
pObjectExtention 등) 은 무엇을 뜻하는지 궁금하기도 합니다...

아참, 하나 더. procTranslate 로 지정된 번역함수가 불렸을 때 자신이 어떤 컨텍스트로 불렸는지
아는 방법이 있을까요?
분류 :
Talk
조회 수 :
12736
등록일 :
2009.12.23
00:10:12
엮인글 :
https://arallab.hided.net/30711/fdb/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/30711

Hide_D

2009.12.23
00:20:45
아 어떤 컨텍스트로 불렸는지 아는 방법은 꼭 있어야 됩니다.

안그러면 분기 필터가 엉망이 될게 뻔해서

아랄

2009.12.23
22:27:53
안녕하세요 whoami님 ^^

1. OnObjectClose 및 OnPluginClose 호출 문제
확인해 보겠습니다.

2. 구버전 필터 체크 알고리즘을 GetPluginInfo 함수가 존재하는지 여부로 판단
네, 다음 버전에 로직을 바꾸겠습니다.
업데이트 되는대로 여기 게시판에 글 올리겠습니다.

3. hPlugin, wszObjectOption, pObjectExtention 의 의미
hPlugin : 플러그인 자신의 모듈 핸들입니다.  핸들 검증 용도로도 쓰일 수 있으며, 컨텍스트 내에 사용된 모든 플러그인을 추적하는 필터를 만들어야 한다면 이 핸들을 사용할 수도 있겠습니다.
wszObjectOption : 객체의 옵션 스트링 버퍼입니다. 플러그인의 옵션 스트링 버퍼와 같은 맥락으로 생각하시면 됩니다.
pObjectExtention : 필터 제작자가 마음대로 사용할 수 있는 변수입니다. OnObjectInit 시에 어떤 포인터를 세팅해도 되고 필요없으면 NULL을 넣어도 됩니다. 항상 유지되는 값입니다.

4. procTranslate 로 지정된 번역함수가 불렸을 때 자신이 어떤 컨텍스트로 불렸는지 아는 방법
현재 컨텍스트의 이름을 얻는 것 외에는 대부분 원하는게 가능할 것 같습니다. pObjectExtention 에 어떤 객체의 포인터를 넣어 놓고, procTranslate 가 호출되었을 때 그 값을 객체로 캐스팅해서 사용하면 객체의 분기문제도 해결될 수 있을 것 같네요.


List of Articles
번호 제목 글쓴이 조회 수sort 추천 수 날짜 최근 수정일
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 155439   2008-08-03 2008-12-16 00:03
124 Talk 하루카제님 요청하신거 C++로 만들어봤습니다. [3] Hide_D 10779   2009-01-05 2009-01-05 18:30
// Test.cpp : 콘솔 응용 프로그램에 대한 진입점을 정의합니다. // #include <stdio.h> #include <tchar.h> #include <math.h> typedef unsigned int UINT; struct BoolArray{ bool Data[32]; }; BoolArray NewBoolArray(); UINT Algorithm(char * szSource)...  
123 Talk 쓰레드를 사용하려고 하는데 제대로 안되네요; [2] Hide_D 10808   2008-12-25 2008-12-26 22:53
음 일단 쓰레드를 사용하는 파일은 CAutoLoad 클래스 하나뿐이구요. CustomDic에 포함됩니다. 5초마다 한번씩 파일리스트에 등록된 파일의 수정된 날짜를 체크해서 새로 갱신된것이면 새로 읽는다...라는 기능을 가지고 있는데, 애초부터 쓰레드가 동작조차 하...  
122 Talk 픽스 라인 연기로 인한 임시 대책 Hide_D 10821   2008-09-26 2009-01-06 01:24
본래 목적인 FixLine이 완성이 늦춰지면서 약간 작전을 변경하도록 하겠습니다. FixLine을 완성시키는 것은 유지하고 FixLine을 3개로 쪼갭니다. OutRuby : FixLine의 TextOnly옵션 DivideLine : FixLine의 Base 기능(DCOnly 대체용) FixChar : FixLine의 Add...  
121 Talk 옵션 스트링 버퍼 말이죠? [1] Hide_D 10830   2008-08-11 2008-08-11 23:22
ezTransXP단부터 확인을 해봤더니 ezTransXP도 LPSTR을 이용하는 군요 ㄱ- 옵션으로 파일명을 받으려고 했는데, 이거 참 난감하게 됬네요. c:ゲ?ムABCA_Route.txt 하면 못열테니까요. 아직 LPTSTR은 안줘봐서 모르겠지만 안된다면 충격이 좀 클듯;  
120 Talk 라파에님 다시 한번 테스트해보세요. [3] file Hide_D 10896   2008-08-17 2008-08-17 17:23
 
119 Talk 디나이코필터 [2] my vagina 10993   2008-12-31 2009-01-15 00:10
코필터는 대단히 훌륭한 필터죠 근데 전부 한자로 되있으믄 간간히 해석 안되는 부분이 생기기도 하는데 어쩔수 없는 부분이 보이거든요. 이런걸 수동으로 억제 해보자는 생각이에요. 아마 코필터 내부에 들어가야 할텐데, 코필터에 디나이필터를 넣어서 일본...  
118 Talk 아 이런 클라나드 [1] file my Vagina 11070   2008-07-13 2009-01-06 01:00
 
117 Talk SVN 말이죠 ㅠ_ㅠ [3] file Hide_D 11128   2008-09-29 2009-01-06 01:24
 
116 Talk Re: SOW 모드의 신기한 점? file whoami 11209   2008-07-23 2009-01-06 01:27
 
115 Talk 사용자대본 지나가다정착한이A님 특별판[...] file Hide_D 11242   2008-10-02 2009-01-06 01:24
 
114 Talk CustomDic의 치환문자열에 대해 ( Hide님께) [2] 호기심맨 11323   2009-01-03 2009-01-05 00:04
안녕하세요 Hide님..저도 전부터 CustomDic유사한걸 만드드라 알아내고 여러번 Test해봐서 얻어낸 결론인데요.. 지금 Hide님이 정의하신 치환문자열"@*_D..../"보다는 역시 실제 쓰일리없는 엉망진창인 알파벳문자열이 훨씬 더 변역결과가 좋더군요. (주로 한...  
113 Talk 조만간 멀티플러그인은 기본 기능으로 흡수시킬까 합니다. 아랄 11346   2008-09-21 2009-01-06 01:25
그리고 ExtTextOut문제를 빨리 해결.. 기리기리 최신 패턴에 대한 업데이트 SVN 저장소 정리하기 등등.. 할게 많군여 ;;  
112 Talk [질문] CustomDic필터와 FixLine의 셋팅순서 [4] 호기심맨 11404   2009-01-03 2009-01-04 14:58
멀티플러그인 필터를 만들려고 하면서 제일 의문이 드는 부분인데요 그 필터들의 실행순서가 어떻게 결정되는지가 무척 궁금하네요 그러니까 예를 들어 A,B,C 3개의 필터를 순서대로 셋팅했다고 가정하면 제가 파악하기로는 알고리즘 코드 ↓ AFilter.OnPreTran...  
111 Talk FixLine 기능 추가 [1] Hide_D 11416   2009-03-13 2009-03-13 21:23
rn r 이런식으로 나올때 r이 우선 적용되는 문제를 해결할것 -가능한 방법- 1. Greedy, UnGreedy의 부분적 적용 2. 우선순위 선택 3. 정규식과 맞짱뜨기 4. 어정쩡한 조건문 (r)(n) 이면 둘중 하나 있거나, 둘다 있거나 하면 그렇게 지정되는걸로 - 류제로님의...  
110 Talk 역시 번역 플러그인 테스트용으론 Hide_D 11417   2008-07-21 2008-07-21 12:50
체험판이 최고군요 +_+ 사쿠라슈트랏세웹 체험판 설치해놓고 전에 관리자님이 올리신 코드로 잘 돌아가니 이걸로 테스트 해야겠군요  
109 Talk 히데님이 말씀하신 테스트파일 [2] file 유르_리샤 11530   2008-12-29 2008-12-30 08:25
 
108 Talk 빈공간[...] file Hide_D 11531   2008-08-16 2008-08-19 00:01
 
107 Talk 일단, 옵션창 이렇게 생기면 되나요? file Hide_D 11569   2008-09-22 2009-01-06 01:25
 
106 Talk ATCode UI 버그 [1] Hide_D 11730   2008-11-01 2009-01-06 01:03
HOOK(0x00480A10,TRANS([ESP+0x28],PTRCHEAT,SAFE)),ENCODEKOR,HOOK(0x005622B0,TRANS([ESP+0x4],PTRCHEAT ​ ,SAFE)),HOOK(0x00562CB0,TRANS([ESP+0x4],PTRCHEAT,SAFE)),HOOK(0x004F5590,TRANS([ESP+0x4],PTRCHEAT,SAFE)) ​ ,HOOK(0x00481790,TRANS([ESP+0x40]...  
105 Talk Fixline용 텍스트 파일.... [3] file 처음처럼만 11753   2008-12-29 2008-12-30 09:02