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
[76039] Re:IdUDPClient1->ReceiveBuffer
아루스 [tinydew4] 1505 읽음    2021-02-10 13:23
수신 버퍼로 TBytes 를 사용하시면 됩니다.
TIdUDPClient::ReceiveBuffer의 첫 인자는 모두 TIdBytes& 이며, TBytes와 호환됩니다.

TBytes RcvBuf;
RcvBuf.Length = 1000;

MainForm->IdUDPClient1->ReceiveBuffer(RcvBuf);

초보남 님이 쓰신 글 :
: 빌더 10.2 사용중입니다.
: udp send 정상 동작하고 rcv 테스트중에 IdUDPClient1->ReceiveString은 스트링으로 정상 수신되나
: hex값으로 받기 위해 IdUDPClient1->ReceiveBuffer은 컴파일 에러가 납니다.
: IdUDPClient1->ReceiveBuffer로 수신할 방법이 있는지요?
:
:
:
: void __fastcall TMainForm::Button_UdpConnectClick(TObject *Sender)
: {
:     unsigned char sendBuf[1000], RcvBuf[1000];
:     int i, Len, Port;
:     void *Data;
:     unsigned char Ip[4];
:     String            stReceive;
:
:     if(MainForm->Button_UdpConnect->Caption=="UDP Disconnect"){
:         MainForm->IdUDPServer1->Active=false;
:         MainForm->IdUDPClient1->Active=false;
:         MainForm->Button_UdpConnect->Caption="UDP Connect";
:         stReceive=MainForm->IdUDPClient1->ReceiveString(100);
:     }
:     else{
:             //MainForm->IdUDPClient1->ReceiveBuffer()
:         MainForm->IdUDPClient1->Host = "192.168.0.20";
:         MainForm->IdUDPClient1->Port = 3000;
:         MainForm->IdUDPClient1->ReceiveTimeout = 5000;
:         MainForm->IdUDPServer1->Active=true;
:         MainForm->IdUDPClient1->Active=true;
:
:         Len=100;
:         for(i=0; i<Len; i++){
:             sendBuf[i]=i;
:         }
:         Ip[0]=StrToInt(MainForm->Edit_Ip1->Text);
:         Ip[1]=StrToInt(MainForm->Edit_Ip2->Text);
:         Ip[2]=StrToInt(MainForm->Edit_Ip3->Text);
:         Ip[3]=StrToInt(MainForm->Edit_Ip4->Text);
:
:         Port=StrToInt(MainForm->Edit_Port->Text);
:         sprintf(sTemp,"%d.%d.%d.%d",Ip[0],Ip[1],Ip[2],Ip[3]);
:         //MainForm->IdUDPClient1->SendBuffer("192.168.0.20", 3000, RawToBytes(sendBuf, Len));
:         MainForm->IdUDPClient1->SendBuffer(sTemp, Port, RawToBytes(sendBuf, Len));
:         //MainForm->IdUDPClient1->Send("test");
:
:
:
:         //stReceive=MainForm->IdUDPClient1->ReceiveString(100);               //=>ok
:         MainForm->IdUDPClient1->ReceiveBuffer(RcvBuf, sizeof(RcvBuf));    //=>nok
:         MainForm->Button_UdpConnect->Caption="UDP Disconnect";
:     }
: }

+ -

관련 글 리스트
76038 IdUDPClient1->ReceiveBuffer 초보남 1157 2021/02/10
76039     Re:IdUDPClient1->ReceiveBuffer 아루스 1505 2021/02/10
76044         Re:Re:IdUDPClient1->ReceiveBuffer 1130 2021/02/15
76075             Re:Re:Re:IdUDPClient1->ReceiveBuffer 아루스 1211 2021/03/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.