자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 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 17227
공지 유용한 관련 사이트 관리자2 2014.03.20 56104
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 99543
2959 JAVA(Android studio)에서 datasnap parameter 값을 보내려면? [2] 델마당쇠 2020.03.18 130
2958 파이어몽키에서 아이폰으로 설치시 e8000051에러가 납니다. file 김태윤 2017.02.15 130
2957 [시작하는 사람들을 위한 델파이 프로그래밍] 모듈 23 - Exercise 4 [2] 관리자 2016.05.27 131
2956 QRChart 컴포넌트 문의 [1] 또보기 2017.02.07 131
2955 Class TLabelEffect not found [3] 훈기 2017.10.31 131
2954 RAD Studio 10.2 Starter 버전에서도 설치 횟수 제한이 있나요? [1] 얼짱나 2017.08.10 131
2953 데이터스냅 미들웨에 메소드 호출문의 입니다 천년바우 2017.08.15 131
2952 [마이그레이션 세미나] 마이그레이션 대체 무엇인가 험프리 2018.03.16 131
2951 Assertion failure .. DBKIMPL.CPP at line 4017 bingry 2018.12.20 131
2950 IOS와 안드로이드에서 설치되어있는 폰트명 가져오는 방법 100jk 2019.04.25 131
2949 [세미나][DavidI] 이번 세미나에서 FireMonkey 새로운 기능에 대한 소개가 적어 아쉬웠습니다. 험프리 2015.10.21 131
2948 [시애틀 출시세미나] FireDAC으로 MongoDB 연결하는 내용을 안내해 주세요. Humphery 2015.09.11 132
2947 개발환경 지원 문의드립니다~~ [1] 지지배배 2016.10.17 132
2946 Java2OP 상쵸리 2017.01.11 132
2945 TMemo 및 다른 컴포넌트의 STyle지정 100jk 2019.01.23 132
2944 기존 프로젝트를 Mac64비트로 빌드하는법?? [1] 100jk 2019.08.01 132
2943 [10.3.3 브리핑] RAD서버의 부하 분산 등은 어떻게 되나요? 험프리 2019.12.05 132
2942 Device Manager에서 Device 추가시.... [1] 황규섭 2016.01.18 132
2941 [마이그레이션] if char in CharSet then 구문에서 W1050 경고를 너무 많이 발생합니다. 험프리 2017.01.31 133
2940 [시작하는 사람들을 위한 델파이 프로그래밍] 모듈 12 - Exercise 4 [1] 관리자 2016.05.10 133