社区
网络编程
帖子详情
winsocket如何以包的形式发送数据,
csl435
2007-03-07 04:53:23
winsocket如何以包的形式发送数据,接收端如何保证接收到正确数据,向高手请教。
最好有例程谢谢。。。。。。
...全文
384
7
打赏
收藏
winsocket如何以包的形式发送数据,
winsocket如何以包的形式发送数据,接收端如何保证接收到正确数据,向高手请教。 最好有例程谢谢。。。。。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
vcayi
2007-04-10
打赏
举报
回复
一般的做法是定义一个包头,一个包体,
包头一般如下
struct head
{
int type;//包类型 比如1为注册。2为注销等等 自定义的
int bodylen;包体长度
下面可以自己根据需要扩充
....
};
包体怎么定义都行了(不用的业务功能可以不同)
比如
struct Body1
{
int test;
char buffer[100];
};
struct Body2
{
char buffer2[200];
long test;
};
发送的时候可以先发包头再发包体
head head1;
head1.type = 1;
head1.bodylen =sizeof(Body1);
send(socket,&head1, sizeof(head));
Body1 body1;
memset(&body1,0,sizeof(body1));
body1.test =100;
strcpy(body1.buffer,'dfsdfsd',7);
send(socket,&body1, sizeof(body1));
接受的时候要先收包头然后根据包头里面的长度字段来决定要接受多长的包体
kakashi0309
2007-04-09
打赏
举报
回复
定义个数据包结构 这样可以保证接收完全~~
wanderfox
2007-04-09
打赏
举报
回复
参考tftp?
CathySun118
2007-04-09
打赏
举报
回复
如果要保证数据正确,自己加上包头,包尾和校验和
cxf_ksword
2007-04-09
打赏
举报
回复
自己定义个结构体(data_info)来封装数据
发送时,一整个结构地发送:
send(socket,&data_info, sizeof(data_info))
接收端时,整个结构地接收:
data_info e;
recv(socket,&e, sizeof(data_info))
之后就像平时用结构一样直接读取数据出来
用TCP传输是基本保证数据正确性的
fox1999
2007-04-09
打赏
举报
回复
要自己处理封包,拆包,组包
ReverseEngineering
2007-04-08
打赏
举报
回复
路过一顶
利用
Win
Socket
发数据(一)
本文分享了使用
Win
Socket
实现TCP协议
发送数据
的代码,包括文件传输和CRC32校验,适合内网环境,但在外围环境可能受限。
【转】 delphi ---
Win
Socket
应用
本文详细介绍了
Win
dows环境下
Socket
通信的工作原理及其实现方法。探讨了客户端和服务端如何建立连接,并通过具体示例说明了文件上传和下载的过程。强调了在网络编程中避免循环发送和接收数据的重要性。
Delphi4的
Win
socket
编程
博客围绕Delphi编程,涉及
Socket
技术在网络服务器方面的应用,聚焦网络应用开发,利用Delphi结合
Socket
构建网络服务器,实现相关网络功能。
用Delphi实现
Win
Socket
高级应用
本文详细介绍了
Win
dows环境下
Socket
通信的工作原理及编程技巧,包括客户端和服务端的连接机制、数据包发送与接收流程,以及如何实现文件的上传和下载等功能。
如何在LoadRunner中使用
win
socket
协议
本文通过实例演示了使用飞秋软件进行
socket
通讯的过程,包括初始化
socket
、发送与接收数据,并展示了数据加密后的
形式
。
网络编程
18,357
社区成员
64,165
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章