|
쓰레드 생성 부분과, 돌아가는 부분 (정확히 말해 호출 되는 부분) 까지 함께 올려주셔야..
정확한 답변을 해드릴 수 있지 않을까 싶습니다. :)
간단한 프로젝트를 하나 만들어서 첨부해 주시면 더더욱 좋겠지요..
아래 내용만으로는 특별한 에러는 못찾겠군요.. (최적화가 안된 부분만 살짝 있구.. ^^) :(
cuperido
남자 님이 쓰신 글 :
: 안녕하세요.
:
: 쓰레드 안에 아래와 같이 코딩을 했습니다.
: 화면을 캡쳐해서 파일로 저장하는 부분인데... (물론 볼랜더포럼에서 검색해서 코드를 찾아꾸요...ㅋㅋㅋ)
: 쓰레들를 돌리다 보면 어느 순간에 TJPEGImage .... Resource Error 인가 부족인가 그와 비슷한 에러가 나옵니다.
: Resource 로 검색해서 보니 쓰레드안에서 이런 문제가 발생하는 경우의 질문이 몇가지 있더군요...
: Synchronize 로 처리해도 안된다고 되어있던데....
:
: 혹시 이 문제를 해결할 방법이 없나요.
:
: HDC dc = GetDC(0);
: Graphics::TCanvas *ScreenCanvas = new Graphics::TCanvas;
: ScreenCanvas->Handle = dc;
:
: Form14->Image3->Picture->Bitmap->Width = 1280;
: Form14->Image3->Picture->Bitmap->Height = 1024;
:
: TRect rect;
: rect = Rect(1, 1, 1280, 1024);
: Form14->Image3->Picture->Bitmap->Canvas->CopyRect(rect, ScreenCanvas, rect);
: if(Form14->capture_value == 0) {
: Form14->Image3->Picture->Bitmap->Canvas->CopyRect(rect, ScreenCanvas, rect);
: }
: delete ScreenCanvas;
: ReleaseDC(NULL, dc);
: Form14->capture_value = 1;
:
: //jpeg file------------------------------------------------------------
: sprintf(textname,"%s_%06d.jpg", DurTestPattern14.filename, Form14->current_cycle);
: TJPEGImage *MyJpg = new TJPEGImage();
: MyJpg->Assign(Form14->Image3->Picture->Bitmap);
: MyJpg->CompressionQuality = 100;
: MyJpg->SaveToFile(textname);
: delete MyJpg;
|