|
Hjpeg->SaveToFile에서 에러가 나더군요
출근하면 확인해봐야겠어요
혹시 제가 틀린부분이 있나요?
쿼드콥터헬기 님이 쓰신 글 :
: 감사합니다. 일단은 테스트를 해보겠는데 언제 뜰지 몰라서 불안하네요 ㅠㅠ
:
: 물론 알려주신데로 하면 안뜨겠지만 ... 제가 아직 초보라서 ㅠㅠ
:
: kylix 님이 쓰신 글 :
: : DC자원(hdHandle)을 다 쓴 후 ReleaseDC함수를 호출해서 해제해주세요.
: :
: : 쿼드콥터헬기 님이 쓰신 글 :
: : : 화면 이미지 캡쳐 할때 뜨는 것 같습니다.
: : :
: : : 매번 뜨는 건 아니고요 어쩌다가 한번씩 뜨는데 그게 왜 그러는지 알려 주실수 있나요?
: : :
: : : 메모리 해제는 다해놨습니다.
: : :
: : : void __fastcall TRelayStart::ScreenCapture(void)
: : : {
: : : char capstrr[50];
: : : int i=0;
: : :
: : : HDC hdHandle = GetWindowDC(this->Handle);
: : : TImage *CAPTURE = new TImage(NULL);
: : : CAPTURE->Width = this->Width ;
: : : CAPTURE->Height = this->Height ;
: : : CAPTURE->Picture->Bitmap = NULL;
: : :
: : : BitBlt(CAPTURE->Canvas->Handle, 0, 0, this->Width, this->Height, hdHandle, 0, 0, SRCCOPY);
: : :
: : : sprintf( capstrr,"%s", TimeToStr(Time()));
: : : for( i=0; i<20; i++)
: : : {
: : : if( capstrr[i]==':')
: : : {
: : : capstrr[i] = '_';
: : : }
: : : }
: : : sprintf( strr, "%s\\%s\\CAPTURE\\%s_%s.jpg", g_strPathName, g_strModelName, DateToStr(Date()), capstrr );
: : :
: : : TJPEGImage *Hjpeg = new TJPEGImage();
: : : try
: : : {
: : : Hjpeg->Assign(CAPTURE->Picture->Bitmap);
: : : Hjpeg->SaveToFile(strr);
: : : }
: : : __finally
: : : {
: : : delete Hjpeg;
: : : }
: : : }
|