자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

datasnap을 사용하여

 1. server

    . ms-sql 테이블에 binary 필드를 가진 테이블 정의

    . client 요청 시, binary 필드 검색하여 리턴

 2. desktop 기반의 client

    . server에 db 데이터 요청

    . ui에 binary 데이터 표시(이미지)

 3. android 기반의 client

    . 기능은 2번과 동일

를 샘플로 작성했습니다.


1번과 2번 간에는 binary 데이터를 stream 형식으로 잘 받아서 UI에 이미지를 보여줍니다.

1번과 3번 간에는 binary 데이터를 stream 형식으로 잘 받는 것으로 보이는데,

  - UI에 이미지를 보여주는 과정에서 에러가 발생합니다.

    . 에러가 발생하는 구간의 callstack은 첨부파일과 같습니다.

    . 에러 메시지: "Range check error."


참고로 UI에서 보여주는 binary 데이터에 대한 처리 코드는 아래와 같습니다.

동일한 방식을 desktop 기반에 적용하면 잘 동작합니다. 

procedure TForm3.StringGrid1Click(Sender: TObject);

var

    ResultStream: TStream;

    ServiceProxy: TServerMethods1Client;

    bitmap : TFixedBitmapItem;

    buffer : TBytes;

    Item : TBitmapOfItem;

    MemStream: TMemoryStream;

begin

    //Edit1.Text: = IntToStr (ClientDataSet1.FieldByName ('film_id'). AsInteger);

    ServiceProxy := TServerMethods1Client.Create (SQLConnection1.DBXConnection);

    try

        ResultStream := ServiceProxy.GetPictureById(1);

        if ResultStream <> nil then

        begin

            MemStream := TMemoryStream.Create;

            MemStream.CopyFrom( ResultStream, ResultStream.Size ); ==> 에러 생기는 코드

            Item := TBitmapOfItem.CreateFromStream( MemStream );

            Image1.MultiResBitmap.Bitmaps[0] := Item;

        end;

    finally

        ServiceProxy.Free;

    end;

end;

뭐가 문제일까요?

모바일 기반의 Firemonkey에서만 문제가 생기네요.


번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 19725
공지 유용한 관련 사이트 관리자2 2014.03.20 58659
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 102207
359 구현 방법 문의 ( ListBox or ListView ) [3] 계양전기 2014.05.29 3179
» android에서 datasnap 사용하여 stream 데이터 전송시 에러 file godkdi 2014.04.23 3194
357 데브기어 강의 - 2016년 3월 (첫 개강!) file 관리자 2015.01.22 3214
356 cannot run project unless a host application id defined. use the run/parameters... [1] file 그래그래 2014.05.08 3229
355 JNI 연동 시 Interface 고유값 생성 [1] godkdi 2014.02.26 3260
354 FFMpeg 디코딩된 AVFrame을 최대한 빨리 TImage에 그리는 방법 질문. [4] file 아크나톤 2020.02.22 3301
353 파이어몽키 모바일개발에서 [1] file fromstog 2014.03.15 3313
352 DelphXE IdFTp 에러 질문 드립니다. modong2 2014.03.13 3315
351 TcpClient 컴포넌트 사용에 관하여 질문 드리겠습니다. [1] 김종진 2014.04.29 3343
350 [XE6] [BRCC32 Error] 갑자기 컴파일이 안되면서 에러가 납니다. [1] 가을이다 2014.07.18 3355
349 안드로이드 스마트폰에서 sqlite DB 보는 방법은? [14] 화이부동 2016.10.31 3412
348 XE6 Indy10 IdTCPClient, IdHttp ReadTimeOut/ConnectTimeOut 적용이 안되요.. 범이 2014.07.15 3449
347 안드로이드 앱 배포 시 'INSTALL_PARSE_FAILED_NO_CERTIFICATES' 메시지가 나타납니다 [2] file 손보라 2017.04.27 3450
346 [질문]ADOQuery 데이타 잘림 현상 궁금이 2014.03.08 3476
345 MediaPlayer 지원 코덱 [1] godkdi 2014.04.01 3526
344 프레임 동적생성후 해제 (메모리 해제가 안되는현상) [2] 가을이다 2014.06.06 3544
343 json 사용 https 주소로 post 방식으로 API 호출tl Header 에 key 추가부분좀 봐주세요 [1] 가나다 2019.03.07 3550
342 [XE6] VCL 리스트뷰 사용법 [1] 가을이다 2014.08.29 3587
341 FMX 동적생성 버튼 폰트, 크기 변경 방법 [3] superman 2014.08.20 3616
340 ios에서 classic bluetooth 로 통신하려면 [1] jojo 2016.03.04 3620