首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

初学者又来了

2012-09-07 
菜鸟又来了我有一个结构体struct{unsigned int8 promid;unsigned int8 moduleid;unsigned int8 modulefalg

菜鸟又来了
我有一个结构体
struct 
{
  unsigned int8 promid;
  unsigned int8 moduleid;
  unsigned int8 modulefalge;
}downmessage;
现在想用 IdUDPServer控件发送出去,
我尝试了用 IdUDPServer->send(AnsiString Ahost,int Aport,AnsiString AData)发送,发出去只有1个字节的长度了,被截断了,后来改用IdUDPServer->send(AnsiString Ahost,int Aport,TByteDynArray Abuffer),同样结果 

求指导啊 换控件的话 太麻烦 要改动很多, 急求啊

[解决办法]
你是啥版本
cb6中该控件有个AByteCount参数
void __fastcall Send(AnsiString AHost, const int APort, const AnsiString AData);
void __fastcall SendBuffer(AnsiString AHost, const int APort, void *ABuffer, const int AByteCount);
[解决办法]
楼主用的哪个版本的CBuilder,你说的函数原型我似乎没有找到。

这unsigned int8就相当于byte类型,数据中难免会有0x0的存在,如果按字符串来发送,遇到0x0就会截断。所以,建议用SendBuffer来发送。

热点排行