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
[45020] Re:Re:Re:다시 자세히 질문 .. 죄송합니다..
utime.김성하 [utime] 1072 읽음    2006-05-24 16:56
형사 님이 쓰신 글 :
: 답변 감사 드립니다.. 꾸벅 ...감사감사
:
:   우선 컴포넌트는 ...TUdpSock 을 사용했는데 ...
:
:   다른걸루 바꾸어도 상관은 없습니다...
:
:   수신하는 데이터를 data[0] 에 첫번째 바이트가 들가고

:   data[1] 에는 두번째 바이트가 들가고 ...
:
:   data[1] 에 들어간 값만큼이 데이터의 길이 이므로... 나머지 데이터 들을
:
:   data[2]..data[3] 에 차곡차곡 한 바이트씩 넣으려고 하는...작업입니다...
:
:   아직 미숙해서리 예문으로 가르처주시면 ... 꾸벅

보통 통신 프로토콜을 작성할 때
{
    WORD DataID;
    DWORD DataSize;
    char * Data;
    ...
}
이렇게 하죠~ ( 지극히 객관적인 자료임 )
형사님처럼 data[1]에 사이즈를 넣는다면 그 데이터는 255를 넘지 못하는 작은 데이터일 것입니다.
물론 작은 데이터를 사용한다면 상관 없지만요~

보통 저 같은 경우엔 편하게 TMemoryStream을 사용하는데요~
TMemoryStream *ms라 정한다면

받은 데이터 처리 부분에서
ms->Write( data+sizeof(해더)+sizeof(크기), 받은 데이터 크기-sizeof(해더)-sizeof(크기));

if( ms->Size == data[1] )
    데이터 처리();

데이터 처리 다 한 후엔 ms->Clear() 해 주시면 끝~

이렇게 하면 되지 않을까~ 합니다~

즐프하세요~

+ -

관련 글 리스트
45003 수신데이터를 바이트 별로 배열에 넣으려면 .... 형사 1278 2006/05/24
45199     Re:수신데이터를 바이트 별로 배열에 넣으려면 .... 금목암 1269 2006/06/03
45017     Re:수신데이터를 바이트 별로 배열에 넣으려면 .... WARSHIP 1179 2006/05/24
45019         Re:Re:다시 자세히 질문 .. 죄송합니다.. 형사 1046 2006/05/24
45023             Re:Re:Re: DynamicArray를 이용하는게 어떠신지요? 미루 1394 2006/05/24
45020             Re:Re:Re:다시 자세히 질문 .. 죄송합니다.. utime.김성하 1072 2006/05/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.