본문 바로가기

쓰기

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
조회 수 :
27118
등록일 :
2010.06.23
02:06:41
엮인글 :
https://arallab.hided.net/36249/31e/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/36249
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 2008-08-03 155439
29 Talk KiriKiri 텍스트 파싱 개선 프로젝트! Hide_D 2010-10-28 22403
28 Talk 뭐라고 설명해야할까요 -_-; 하여간 설명 file G2m 2010-01-21 22598
27 OtherFiles [소스, 실행파일]MeCab을 독음 변환기로 사용한 예제 file Hide_D 2009-09-09 22691
26 Talk [뻘글] 요새 프로텍터가 하도 무서워서 Hide_D 2010-10-26 22878
25 Talk '잡담인데' [2] FrigateBird 2010-02-22 23212
24 Talk FixLine 버그 발생 [1] Hide_D 2010-04-25 23382
23 Talk ATS의 문제점.. Hide_D 2010-05-15 23578
22 Archive [플러그인, 소스] preHK2FK [3] file whoami 2008-07-04 23992
21 Archive [플러그인] CustomDic 4.0.4.131 RC [5] file Hide_D 2011-01-05 24298
20 Archive [플러그인, 소스] KiriKiri 테스트 버전 20090726 [10] file whoami 2009-07-26 24511
19 Talk [질문] Http POST전송에 대한 이것저것 [3] 호기 2009-09-22 24751
18 OtherFiles [소스] Test Network + Google Translate Source - 2 file Hide_D 2010-06-19 26517
17 Archive [플러그인] GoogleTrans 테스트 버전 (20100620) file Hide_D 2010-06-20 26601
» Talk [0.2] OnPluginInit단에서 스레드를 만들 때 [회피법] Hide_D 2010-06-23 27118
15 Archive [플러그인, 소스] NonCached 테스트 버전 20090709 [3] file whoami 2009-07-09 27839
14 OtherFiles [프로그램] 필터 테스트 프로그램 [13] file Hide_D 2008-12-16 27998
13 Archive [플러그인] OutRuby 임시 버전 20081012_2 [7] file Hide_D 2008-10-12 28333
12 OtherFiles AralTrans.exe 파일 살짝 수정했습니다. + 아랄씨 계시면 보세요 file Hide_D 2010-06-07 28477
11 Talk 0.3님 제발 자비좀[.....] [2] G2m 2010-05-05 29951
10 OtherFiles [프로그램, 소스] AT 환경 수집기 20100526 [1] file Hide_D 2010-05-26 30118