C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[26411] [질문] MySQL 데이터베이스에서 이미지 읽어오기
Starlet [starlet5] 1415 읽음    2003-07-24 06:22
01.jpg 218.7KB 서버에 올린후 불러와도 잘 작동함
02.jpg 14.4KB Invalid class typecast 에러 발생
안녕하세요. MySQL 데이터베이스에 LONGBLOB 형식의 필드에 저장된 이미지를 읽어오는데 몇개의 이미지만 Invalid class typecast 에러를 내면서 읽어오지를 못합니다. 이미지는 모두 jpg 형식이며 MySQL Manager 같은 툴에서 보면 이미지가 제대로 보입니다. Invalid class typecast 에러가 나는곳은 밑줄(~~~~~~) 친 부분입니다. 해결 방법이 없을까요? 왜 몇개의 데이터에서만 이 오류가 나는것일까요? 이미지 크기를 바꾸고 압축률을 바꾸고 해도 에러가 나는 이미지는 계속 에러가 생깁니다. 첨부파일의 01.jpg는 아래 소스로 잘 작동하는 이미지이고 02.jpg는 에러가 나는 이미지입니다.

ImageADO->Close();
ImageADO->SQL->Text = "SELECT * FROM Image WHERE ID = "+AnsiString(ID);
ImageADO->Open();
if (ImageADO->RecordCount)
{
       ms = ImageADO->CreateBlobStream(ImageADO->FieldByName("Image_Data"), bmRead);
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       ms->Position = 0;
       try {
              jpg->LoadFromStream(ms);
              Image->Picture->Bitmap->Assign(jpg);
       }
       catch (Exception & exception)
       {
                     ...

+ -

관련 글 리스트
26411 [질문] MySQL 데이터베이스에서 이미지 읽어오기 Starlet 1415 2003/07/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.