본문 바로가기

쓰기

지금 ML_Trans라는 번역 플러그인을 만들고 있는데 좀 이해가 안가는 문제가 생기네요..
아랄에 적용시킨후 다른 번역 플러그인으로 바꿀때는 아무 문제가 안생깁니다
그러니까 번역 플러그인을  EzTransXp<->ML_Trans로 마구 여러번 바꾸어도 문제는 안일어 납니다.
(즉 플러그인의 OnPluginClose() - dll Free부분은 잘 작동된다는 의미)

그런데 게임을 종료 즉 아랄을 종료시킬때는 이 부분에서 오류창이 뜨네요...
충돌나는 지점은 J2kEngine.dll에서 뽑아쓰는 J2K_Terminate 함수 부분인데요
왜 Aral이 켜져있을때는 문제없이 작동되다가.. 
Aral이 종료될때는 오류창이 나는지 의문이네요..

머 게임 다끝난후에 나오는 오류이니까 사용자입장에서는 큰 문제는 아닐지 몰라도
J2kEngine.dll 이 FreeLib안된채로 끝나는건 많이 찝찝하니까요

참 번역엔진으로 사용하는 dll은 J2kEngine.dll  - v 1.5.1.10 입니다.
분류 :
Talk
조회 수 :
14864
등록일 :
2009.03.15
09:25:58
엮인글 :
https://arallab.hided.net/4300/f75/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/4300

Hide_D

2009.03.16
03:08:59
이 문제로 몇가지 고민을 한 적이 있는데

저 같은 경우에는 MFC로 윈도우즈를 띄워둔 상태에서 Close가 들어올 때 자동으로 윈도우를 소멸시키는 코드를 만들었는데, 그냥 추가/제거 할때는 잘만 되다가 막상 게임을 꺼버리면 위의 경우와 같이 오류가 발생하더군요 -_-;

http://www.aralgood.com/zbxe/347148
이 글에 써놓은 것과 같이
아무래도 게임의 종료가 플러그인의 종료보다 우선적으로 일어나면서, 실제 라이브러리 자체가 미리 파괴되는 것 같습니다. 이걸 해결하기 위해서는 종료시에 게임 윈도우가 열려있는지 닫혀있는지를 확인해야 할건데... [흠]

호기

2009.03.25
22:52:25
아 히데님 말씀이 맞네요...
거의 소스라인마다 디버그 출력을 넣어서 확인해 보았는데...
정상 종료할 시간을 주질 않네요...
즉 게임이 종료하게 되면 OnClose함수가 미쳐 다 완료되기도 전에 중간에 끈겨버리네요 (게임에 따라서...)

기존 번역플러그인은 종료시에 하는일이 사실상
따로 생성한 스레드에서 new 로 잡은 버퍼하나민 바로 delete시키는게 다여서...
이문제를 잘피할수 있었지만...

Free과정이 어느정도 되는 플러그인들은 이문제를 피하기가 힘들어 보이네요~

아랄

2009.10.20
18:06:48
그래서 0.3 에서는 로드되는 모든 플러그인의 DLL 엔트리포인트(DllMain)를 후킹하도록 했습니다.
PROCESS_DETACH 였나?
아무튼 이 값을 감지해서 DLL이 떨어져나가기 전에 OnPluginClose()를 호출해 주도록 하고 있습니다.
List of Articles
번호 제목 글쓴이 조회 수 추천 수 날짜 최근 수정일sort
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 155437   2008-08-03 2008-12-16 00:03
209 Talk VB용 커스텀스크립트 Hash 함수 [2] HaruKaze 9835   2009-01-05 2009-02-14 11:01
비주얼베이직에서 사용할 수 있는 커스텀스크립트 Hash 생성 함수입니다. 비주얼베이직에서는 이진 변환과 이진 연산을 할 수 없기 때문에 이진 변환과 연산을 할 수 있게 해주는 함수를 작성하여 만들었습니다. - 정수를 이진 문자열로 변환하는 함수 - 이진...  
208 Talk [질문] 번역플러그인에 관해... [2] 호기심맨 12729   2009-01-06 2009-01-06 09:12
Aral을 하다보면 한번 번역된 문장은 다시 번역하지 않고 예전에 번역된 결과값을 다시 쓰잖아요.... 궁금한건 이부분을 Aral본체가 하는것인지.... 아니면... 번역플러그인이 해주는 것인지이거든요.. 그러니까 번역플러그인을 만들려면.... 저 처리를 번역플...  
207 OtherFiles CustomDic 090106 쓰레드 에러 도와주세요~ [2] file Hide_D 14035   2009-01-06 2009-01-06 20:47
 
206 Archive 번역용 작업툴 v0.2.2 [2] file HaruKaze 11464   2009-01-06 2009-01-06 23:48
 
205 Archive SimpleDLL [2] file Hide_D 12021   2009-01-07 2009-01-07 15:55
 
204 Archive (수정) 하루카제님 요청하신 VB용번역dll입니다. [2] file 호기심맨 10250   2009-01-07 2009-01-08 00:54
 
203 Archive CustomDic 0.3 20080107 또 오류 OTL [5] file Hide_D 13954   2009-01-07 2009-01-08 02:00
 
202 Talk ezTransXP의 다이얼로그 파일의 h,cpp가 누락되어있습니다. [1] Hide_D 12415   2009-01-10 2009-01-12 21:37
커밋하시면서 빼놓으신것 같네요;; ezTransXP 쪽도 수정할게 좀 있어서 저부분 마저 올려주세요~  
201 Archive [플러그인,소스] Korean Duplication Checker 20090115 [2] file Hide_D 13334   2009-01-14 2009-01-19 23:34
 
200 Talk 코드정리 목록 + 코드 secret sizukana 6   2009-01-17 2009-01-17 11:41
비밀글입니다.  
199 Archive [번역툴]QuickTrans Beta 0.0.6 [6] file HaruKaze 21992   2009-01-28 2011-04-27 12:51
 
198 Archive TextFile Open/Save Library [5] file Hide_D 11830   2009-02-01 2009-02-09 00:37
 
197 Archive [번역툴]QuickTrans 0.0.10 RC4 [10] file HaruKaze 11899   2009-02-09 2009-03-07 20:49
 
196 Talk 버그 확인 목록 [4] Hide_D 12347   2009-03-06 2009-03-16 03:09
(확인) CustomDic - 옵션창에서 쓰레드를 중지하지 않았다. CustomScript - 파일이 없는 상태에서 바로가기에 Write 모드가 추가되었을때 에러 KiriKiri - 선택지 출현지 문자열 번역 오류 해결 (확인 필요) FixLine 문자가 아무도 없을때 튕김 -_-? 2Byte 잘 ...  
195 Archive [번역툴]QuickTrans 0.1.0 릴리즈 [1] file HaruKaze 17465   2009-03-08 2011-06-28 01:25
 
194 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) 이면 둘중 하나 있거나, 둘다 있거나 하면 그렇게 지정되는걸로 - 류제로님의...  
» Talk 번역 플러그인 난해한 문제???? [3] 호기 14864   2009-03-15 2009-10-20 18:06
지금 ML_Trans라는 번역 플러그인을 만들고 있는데 좀 이해가 안가는 문제가 생기네요.. 아랄에 적용시킨후 다른 번역 플러그인으로 바꿀때는 아무 문제가 안생깁니다 그러니까 번역 플러그인을 EzTransXp<->ML_Trans로 마구 여러번 바꾸어도 문제는 안일어 납...  
192 Talk 히데님이 부탁하신거.... [1] file 류제로 19458   2009-03-21 2011-06-28 01:25
 
191 Talk FixLine '인수 추가' 창 새 디자인 [4] file Hide_D 18340   2009-03-26 2009-03-27 02:07
 
190 Archive FixLine v2 20090329 테스트버전 [6] file Hide_D 14317   2009-03-29 2009-03-29 15:51