본문 바로가기

쓰기

http://lab.aralgood.com/board_documents/3202
에 나온대로 플러그인이 초기화되는 시점이 '안전하지' 않기 때문에
Init 단에 스레드를 추가하기가 어려운데, 이를 위한 회피 방법입니다

[OnInitThread에 AfxBeginThread를 사용하면 '무조건' 얼어버리는 현상이 있었습니다
 예전에 (폐기한) DumpText2를 시험할 때나 현재 CustomDic을 개선할 때 모두 나타났습니다]

원리는 간단한데,
1. SetTimer로 수 초 뒤 특정 함수가 동작하도록 한다.
2. 그 함수에서 AfxBeginThread나 _beginthreadex를 시도한다.


UINT threadProc(LPVOID data){
    CDumpDlg dlg;
    dlg.DoModal();
    return 0L;
}

VOID CALLBACK TimerProc(HWND hwnd,UINT uMsg,UINT_PTR idEvent,DWORD dwTime){
    m_pThread = AfxBeginThread(threadProc,NULL);
    KillTimer(NULL,idEvent);
}

BOOL CDumpTextApp::OnPluginInit(HWND hSettingWnd, LPSTR szOptionStringBuffer){
    m_hSettingWnd = hSettingWnd;
    m_szOptionStringBuffer = szOptionStringBuffer;

    m_pTmpTimer = SetTimer(NULL,1,5000,TimerProc);

    return TRUE;
}

이 경우엔 초기화는 안정적으로 동작하지만 역시 '종료'시
추가 스레드가 작동중인지 아닌지 주의해주어야 할 것 같습니다.
분류 :
Talk
조회 수 :
28086
등록일 :
2010.06.23
02:06:41
엮인글 :
https://arallab.hided.net/36249/ea9/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/36249
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 2008-08-03 179606
203 Talk ATCustom - 함수 Reference [47] Hide_D 2010-07-20 104980
202 Talk 아랄3 디버깅이 말이죠... [2] file JKLeetro 2010-04-20 36745
201 Talk AT 0.2에서 내부 버퍼가 4096을 넘을 수 있어야 합니다. [1] Hide_D 2010-07-13 35299
200 Talk JSCustom의 초기 골격 코드를 SVN에 커밋했습니다. [1] Hide_D 2010-09-18 34951
199 Talk 0.3님 제발 자비좀[.....] file 아무개 2010-05-23 34049
198 Talk ATCustom - 프로젝트 소개 [8] Hide_D 2010-07-22 33780
197 Talk 번역 모듈로 인터넷을 이용하는 방법. Hide_D 2010-06-04 31219
196 Talk 0.3님 제발 자비좀[.....] [2] G2m 2010-05-05 31036
» Talk [0.2] OnPluginInit단에서 스레드를 만들 때 [회피법] Hide_D 2010-06-23 28086
194 Talk [질문] Http POST전송에 대한 이것저것 [3] 호기 2009-09-22 25746
193 Talk ATS의 문제점.. Hide_D 2010-05-15 24572
192 Talk FixLine 버그 발생 [1] Hide_D 2010-04-25 24362
191 Talk '잡담인데' [2] FrigateBird 2010-02-22 24244
190 Talk 음음... 제가 도와드릴 일이 있을까요,,,? [2] S.sage 2008-11-20 23803
189 Talk [뻘글] 요새 프로텍터가 하도 무서워서 Hide_D 2010-10-26 23762
188 Talk 뭐라고 설명해야할까요 -_-; 하여간 설명 file G2m 2010-01-21 23530
187 Talk KiriKiri 텍스트 파싱 개선 프로젝트! Hide_D 2010-10-28 23309
186 Talk DenyWord + 정규표현식? Hide_D 2010-12-18 21545
185 Talk FixLine 테스트버전 081215 [1] file 그레이 2008-12-16 21378