说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

请高手指教如何在WinSocket.SendData中发送自定义的结构体数据???!!!

编辑:说三道四文库 发布时间:2018-01-24 02:12
HTML文档下载 WORD文档下载 PDF文档下载
如:typedef struct _man
{
char Sex[2];
int age;
}man;
怎样才能用WinSock控件将该结构体数据发送出去,客户端又如何能成功接收和解析呢?
必须假设客户端知道您发送的是
man而不是其他数据。
to  iicup;
客户端当然知道要接收的数据类型。
就按一般数据发送就可以

大致如下:

// 发送
man M;
M.Sex[0] = 'M';
M.Sex[1] = '\0';
M.age = 18;

send(&M,sizeof(M));

// 接收
man M;
recv(&M,sizeof(M));
和楼上一样。直接就可以发。接受的时候也要用相同格式接受,就可以直接得到结构体中相应位置的数据。
在客户和服务两端定义相同的数据结构,然后就可以直接发送和相应的接收了
可以把struct转换为char*,然后发送,接收后,相应的提取对应的数据
楼上的思路可行。
本来有代码来着 现在没了。
to: iicup(双杯献酒) 
各位:WinSock控件的发送函数可是SendData啊。函数定义如下:
void CMSWinsockControl::SendData(const VARIANT& data)
不知道如何用该函数传送和接收自定义的结构体数据?
混分
SendData((PBYTE)&st,sizeof(st));
const VARIANT& data?
data.vt=VT_UI1|VT_BYREF;
data.byref=PBYTE(&st);
typedef struct _PACKET
{
int          nCode;
char         *pszName;
char         age[10];
}PACKET , *LPPACKET;



PACKET p;
p.nCode = 5;
strcpy(p.age, "test");
p.pszName = "gdy119";


send(s, (char*)&p, sizeof(p), 0);


-------------------------------------

PACKET p;
ZeroMemory(&p, sizeof(p));
recv(ss, (char*)&p, sizeof(p), 0);
AfxMessageBox(p.age);
AfxMessageBox(p.pszName);


一切正常
Jail Breaking之后,iOS 7的指纹识别还hold住么? “勇者前线”开发商Gumi获1900万美元融资 工信部发首批10张虚拟运营商牌照 开发者有哪些新机会 【PPT集萃】十位一线专家分享Spark现状与未来 谁主沉浮,亚马逊和思科角力DaaS市场 框架页,怎么刷左边的窗口? ASP.NET安装后问题! Java与ASP的对比 我采用SQL Server作为数据库,想通过JSP查询到数据库,但是总是有错误,请各位赐教! 新手,这样的触发器如何写? 菜鸟一问 如何存储既包含文字又包含图片的文件内容? 长沙笑话《阿呆转行》完整版 我创建了一个菜单,运行不显示,请问应该设置哪个属性 语文课时特训七年级下第17课答案 初一语文上册字词重点句子 初一语文上册的课后题第3题 400字 初一语文上册苏教版字词表上全部四字词苏教版字词表上 七年级高效课时通人教版语文答案,要详细的,全部答案 有好的加分20!)1.从百草园到三味书屋 鲁迅只要 人教版七年级语文(上)天下通课时作业本 P29第1 七年级下册语文人教版《高效课时通》答案(开明出版社 急求优+学案课时通九下人教版语文答案 复习用 1500件纳粹窃据艺术品被发现 价值埃及法老图坦卡蒙死因新解:或死于“车美国回应巴基斯坦指责 称与塔利班和谈阿富汗吸毒人数剧增 农村吸毒率达到3美国两架小飞机高空相撞 跳伞员及驾驶穆帅开通Ins晒合同,妻儿推特晒其办官方:布斯克茨同巴萨续约两年这款可以自制关卡的「纪念碑谷」,竟把分层落定:本周新挂牌111家 成交3中国和俄罗斯联手能否打赢美国预测言论浪子绝色谱光明战记骷髅兵日记异空幻录风山云海西塘人家旅游南京博物馆旅游媚香楼旅游莫愁湖旅游明故宫遗址公园旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘