Question and Answer Database FAQ2217C.txt Using the UDP component to send a string. Category :VCL Platform :All Product :C++Builder 1.x Question: I want to send a atring though the UDP component and then have another application get the string. How do I do this? Answer: My first recommendation would be to not use the UDP use the TCP component, but if your stuck on using the UDP then here is how it works. The UDP component has a total of 2 methods, SendData and GetData. You use the SendData method to Send the data as a Variant type. This is no big deal, the tricky part is how to recieve the data. You use GetData to recieve the Data as a Variant type VT_BSTR (it is tricky cause the documentation is very limited and usually in BCB you have to set it up as a VT_BSTR | VT_BYREF, but not this time). You want to Get the Data when a UDP->OnDataArrival event occurs. So here is a little sample code that deminstrates the use of the UDP component. //Start code--------------------------------------------------- //the port is set to at design time to 11 for both local //and remote, but you can set it to what every you want //as long as you send it to the right port void __fastcall TMainForm::SendClick(TObject *Sender) { //set the remote host to the ip that you want to send to UDP->RemoteHost = ebSendTo->Text; //send the data to the host UDP->SendData (ebData->Text); } //------------------------------------------------------------- void __fastcall TMainForm::UDPDataArrival(TObject *Sender, int bytesTotal) { //creat a variant to recieve the data Variant msg; //set its type to VT_BSTR (basic string) msg.AsType (VT_BSTR); //get the broadcasted data UDP->GetData (msg, VT_BSTR); //set the Recieved edit box to the message recieved ebRecieved->Text = msg; } //------------------------------------------------------------- And that should do it. Have fun with the UDP Kevin 7/2/98 10:32:32 AM
Last Modified: 01-SEP-99