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
[51560] Re:Re:Re:Re:다시 질문드립니다.
코코정 [joonsuk725] 975 읽음    2007-12-10 16:54
정말 정말 정말 감사하고 또 감사 합니다
회사에 입사해서 매일 밥충이라고 했는데 오늘 한 건 했습니다. 제가 한거 아니지만여...
정말 감사하구여...올 한해 답변해주시느라 수고하셨구여 내년에도 부탁드립니다..
감사합니다..내년에 복 많이 받으시구여...크리스마스 즐겁게 보내세여...메리 크리스마스........^^


장성호 님이 쓰신 글 :
: AnsiString으로 하시면 안됩니다.
: AnsiString은 문자열을 처리하기 위한 class입니다.
: 왜냐하면 문자열은 기본적으로 시작부터 0x00을 만나면 끝은로 간주합니다.
:
: 예를 들어
:
: char buf[100];
:         buf[0]='a';
:         buf[1]=0;
:         buf[2]='b';
:         buf[3]='c';
:
: strlen(buf) 해보세요   100 이 아닌 1이 나올겁니다.  왜냐하면 0까지만 문자열로 보기때문에...
:
: 그냥 char buf를 쓰세요
:
: unsigned char buf[256];
: buf[0]= 5  ;  //Length or Count
: buf[1]= iFrameType ;
: buf[2]= 0;
: buf[3]= 0 ;
: buf[4]= ~ ( buf[0]+buf[1]+buf[2]+buf[3]); 
:
: SendBuff(buf,5) ;  //이런식으로 해야하죠
:
: checksum은 data가 길어지면 간단하지 않으므로 for문으로 만들면 되구요
:
: 그럼..
:
:
:
:
:
: 코코정 님이 쓰신 글 :
: : 답변 정말 정말 감사합니다.
: : 그런데여 또 한가지 질문이 있습니다.
: : 제가TCP/IP통신을 하려고 하는데여 방금 테스트를 하고 왔는데 서버가 아는척 를 안하더라구여..
: : AnsiString Count = 0x05;
: : AnsiString Type  = 0x00;
: : AnsiString Data  = 0x00;
: : AnsiString Sum  = !(Count + Type + Data);
: : AnsiString  Frame = Count + Type + Data + Sum;
: : Sendbuff(Frame.c_str(),Frame.length()); 이렇게여....
: : 이렇게 해서 버퍼로 보냈는데 제가 작성한거에 무슨 문제라도 있는건가여?
: :
: :
: : 장성호 님이 쓰신 글 :
: : : Frame = Count+FType+Data(n)+CheckSum
: : :
: : : * Count = 프레임 전체 길이 입니다.
: : :        1+1+n+1 가 되겠네요
: : :        (좀 애매한데 보통 Count부분을 빼기도 합니다.)
: : :
: : : * FrameType은 데이타 아무거나 올것이구
: : : * Data는 총 250 Byte이하 이구
: : :
: : : * CheckSum은?
: : :      Check sum – is inverted sum of all previous bytes of the a Frame.
: : :      즉  체크썸 앞에까지 전체 sum해서 invert하라네요
: : :      
: : :      예) 아래와 같은경우..
: : :       Count 5 + FType 1  + Data { 0x03 , 0x04 } + ChkSum
: : :       ChkSum= ~ (0x05 + 0x01 + 0x03 + 0x04 ) ;  이렇게 됩니다.
: : :    
: : : 그럼..
: : :
: : :
: : :  
: : :
: : :
: : :
: : : 코코정 님이 쓰신 글 :
: : : : 바로 아래질문을 하였는데 제가 읽어봐도 무슨 말 인지 이해가 되질않아서 이렇게 다시 질문합니다.
: : : : 첨부한 파일이 프로토콜입니다.
: : : : 해석좀 부탁 드립니다.
: : : : Byte count가 무엇을 하고자 하는 놈인지 궁금하구요
: : : : check sum을 계산하라고 하는데 어떻게 계산하는건지도 궁금합니다..
: : : : 그리고 예를 들어 설명해 주시면 감사하겠습니다.
: : : : 예)
: : : : 프레임 타입은 0x00이고
: : : : 데이터는            0 이니
: : : : 프레임 구조는 이렇게 합니다...뭐 이런식으로요  도와주십시요...

+ -

관련 글 리스트
51553 다시 질문드립니다. 코코정 920 2007/12/10
51556     Re:다시 질문드립니다. 크레브 907 2007/12/10
51554     Re:다시 질문드립니다. 장성호 978 2007/12/10
51555         Re:Re:다시 질문드립니다. 코코정 1001 2007/12/10
51559             Re:Re:Re:다시 질문드립니다. 장성호 1060 2007/12/10
51560                 Re:Re:Re:Re:다시 질문드립니다. 코코정 975 2007/12/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.