본문 바로가기

쓰기

멀티플러그인 필터를 만들려고 하면서 제일 의문이 드는 부분인데요
그 필터들의 실행순서가 어떻게 결정되는지가 무척 궁금하네요
그러니까 예를 들어 A,B,C 3개의 필터를 순서대로 셋팅했다고 가정하면
제가 파악하기로는
      알고리즘 코드
             ↓
AFilter.OnPreTrancelate (....)
             ↓
BFilter.OnPreTrancelate (....)
             ↓
CFilter.OnPreTrancelate (....)
             ↓
         번역 필터
              ↓
AFilter.OnPostTrancelate (....)
             ↓
BFilter.OnPostTrancelate (....)
인거같은데 말이에요....

이렇게 될경우 FixLine필터와 CustomDic필터의 셋팅순서가 애매해지네요
두 필터의 성격상
PreTrance부분에서는 FixLine이 먼저 설정되어야 하고,
PostTrance에서는 FixLine이 나중에 셋팅되어야 CustomDic이 안깨지고 잘 적용될거 같은데 말이에요
즉 A->B->번역->B->A와 같이
 FixLine.PreTrance()->CustomDic.PreTrance()->번역필터->CustomDic.PostTrance ()->FixLine.PreTrance()
이렇게 적용되어야 양쪽필터가 다 안충돌하고 적용될거같은데...
저렇게 작동되도록 배치하는 방법이 지금 멀티플러그인에 있나요?
분류 :
Talk
조회 수 :
11404
등록일 :
2009.01.03
14:42:21
엮인글 :
https://arallab.hided.net/4189/f3f/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/4189

whoami

2009.01.03
19:42:25
순서를 잘못 아시고 계시는군요.

플러그인의 작동 순서는
후킹->필터A->필터B->필터C->번역->필터C->필터B->필터A->후킹 입니다.

호기심맨

2009.01.03
21:05:44
아하!! 스택구조였군요....
아하하 완전 거꾸로 알았네요.....(화끈)
어쩐지 ......왜 이게 꼬이지 하고.....
제가 짠부분이 잘못됬나 하고 ....계속 죄없는 소스만 노려보고 있었거든요 ..
whoami님 덕에 또 큰도움받네요....
거듭 감사드립니다.

그나저나 .dll프로그램은 처음해보는건데....
디버그를 할방법을 모르니... 답답하네요... 

Hide_D

2009.01.04
00:31:39
디버그 방법은 다음과 같습니다.

일단 SVN에서 소스를 받아 디버그 모드로 빌드

그리고 프로젝트 옵션에서 디버깅을 들어가서
파일을 게임 파일(아랄트랜스 실행파일이 아니라)을 선택하고

연결에 '네'를 선택 (즉 Run이 아니라 Attach라는 의미)

그리고 게임은 켜고나서 디버깅버튼을 누르면 디버깅을 시작합니다.


개인적으로 필터 테스트는 제가 올란 TestFilter 프로그램을 사용하시는것을 추천드립니다.

호기심맨

2009.01.04
14:58:26
아 디버그되는군요... 너무 감격 (T.T)
이야 진짜 매번 이렇게 큰 도움주셔서 너무 감사드립니다.
(근데 앞으로도 도움받을일이 너무 많을거 같아서...걱정이네요)
List of Articles
번호 제목 글쓴이 날짜sort 조회 수
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 2008-08-03 155439
209 Talk 음 제가 컴퓨터를 못하는 사람이라 뻘글일 수도 있겠지만.. [2] 쥬빌 2008-12-30 14389
208 Talk 히데님이 말씀하신 테스트파일 [2] file 유르_리샤 2008-12-29 11530
207 Talk Fixline용 텍스트 파일.... [3] file 처음처럼만 2008-12-29 11753
206 Talk 필터에 MFC로 모달리스 창을 띄웠을때=ㅅ=; [4] file Hide_D 2008-12-27 13934
205 Talk FixLine 23일자 파일은 무시설정에 문제가 있는듯하네요 [7] 류제로 2008-12-26 15841
204 Talk 쓰레드를 사용하려고 하는데 제대로 안되네요; [2] Hide_D 2008-12-25 10808
203 Talk 기리기리 [] 함수 내부 처리 [1] Hide_D 2008-12-23 12463
202 Archive [플러그인,소스] FixLine RC2 081223 [4] file Hide_D 2008-12-23 17424
201 Talk 아아아아앍 cmd /u !!!!!!!!!!!!!!!!!! [1] Hide_D 2008-12-22 12323
200 Archive [플러그인,소스] FixLine RC 081222 file Hide_D 2008-12-22 12576
199 Archive [플러그인,소스] FixLine 테스트버전 081221 [5] file Hide_D 2008-12-21 15475
198 Archive [플러그인,소스] FixLine 테스트버전 081220_2 [2] file Hide_D 2008-12-20 13376
197 Talk ezTransXP 플러그인 버그 =ㅅ=?? [2] Hide_D 2008-12-20 12427
196 Archive [플러그인,소스] FixLine 테스트버전 081219 file Hide_D 2008-12-19 11449
195 Talk [오류보고]ATcode 버퍼크기 무시 버그 [1] file HaruKaze 2008-12-18 12813
194 Archive [플러그인,소스] FixLine 테스트버전 081217 file Hide_D 2008-12-17 12415
193 OtherFiles fixline 테스트 3차 [2] file 처음처럼만 2008-12-16 16074
192 Talk FixLine 테스트버전 081215 [1] file 그레이 2008-12-16 20429
191 OtherFiles fixline 테스트 2차 file 처음처럼만 2008-12-16 13341
190 OtherFiles fixline 테스트 [1] file 처음처럼만 2008-12-16 15297