Solved

Copying a binary buffer to a TIdBytes object

Posted on 2013-01-28
3
1,328 Views
Last Modified: 2013-02-03
I am using Indy10 with C++ builder XE2 and I want to send a packet of binary data using a UDPServer control. I have a plain buffer of data to send in an array of unsigned chars.
Can someone explain how to move data from a plain character array to a TIdBytes object

The code is as follows :

unsigned char buff[566];
TIdBytes ABuffer;

SetupBuffer(buff) // data is prepared for sending (566 bytes)

// .....  some code needed to move the buffer into the TIdBytes buffer ??

// now send the data using UDP to a remote host listening on port 10036

IdUDPServer1->SendBuffer(remotehost,10036,ABuffer);

Thanks,

Roger
0
Comment
Question by:alcindor
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 86

Expert Comment

by:jkr
ID: 38827408
That could be

unsigned char buff[566];
TIdBytes ABuffer;

ABuffer.Length = 256;

for (int i = 0; i < 256; ++i)
  ABuffer[i] = buff[i];

Open in new window


But IMHO it might be easier to pass ABuffer to 'SetupBuffer()' instead.
0
 
LVL 2

Accepted Solution

by:
alcindor earned 0 total points
ID: 38830557
I have found the answer:

ABuffer.set_length(sizeof(buff));
ABuffer =  RawToBytes(buff, sizeof(buff));
0
 
LVL 2

Author Closing Comment

by:alcindor
ID: 38848251
I found the solution myself
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Does the idea of dealing with bits scare or confuse you? Does it seem like a waste of time in an age where we all have terabytes of storage? If so, you're missing out on one of the core tools in every professional programmer's toolbox. Learn how to …
Displaying an arrayList in a listView using the default adapter is rarely the best solution. To get full control of your display data, and to be able to refresh it after editing, requires the use of a custom adapter.
The goal of the video will be to teach the user the difference and consequence of passing data by value vs passing data by reference in C++. An example of passing data by value as well as an example of passing data by reference will be be given. Bot…
In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…

729 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question