数据流和字节可以一起发送吗? 拿到一个文档,要发送一文件给对方,要在报头加上文件(文件小于1024字节)的长度(占前四个字节)比如要发送一个大小为789字节的文件aa.txt发送的格式是:0789+数据流(即文件aa.txt)混合发送,以前都没想过~~哪位兄弟做过,说说~~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那你用TransmitFile来解决,里面有参数指定在发送文件数据前,先发送的数据 定义一个结构struct file{ int length; char* ...}; 如果单纯的发文件流你怎么发不还是定义一个buffer,然后把文件数据放进去,再发送吗加个头部就是定义buffer的时候定义大一点,先在开始放大小,后面放文件数据 int len = 1024;TRANSMIT_FILE_BUFFERS head;head.Head = &len; //可能要转换一下head.HeadLength = sizeof(int);head.Tail = 0;head.TailLength = 0; TransmitFile(sock, //客户端的连接socket hFile, //abc.exe的文件句柄 0, //发送的文件数据长度 0, //每次发送的大小 0, //重叠IO,不会就填0,会的就去折腾 &head, //指定在发送文件数据前和后,先和后发送的数据 TF_USE_KERNEL_APC | TF_WRITE_BEHIND); 写了个demo测试成功了,没问题一样的发送现在才晓得,混合还能一起发送~~~~ 诚邀开源软件-InstallMaker安装包打包工具的VC++开发伙伴 求助(有没有什么函数能向光盘写数据???) 關於hook dll中proc函數的聲明問題 100分求windows学习方法 如何通过网络途径察看另一台主机的磁盘空间大小 请问如何用vc更改DNS设置? 菜鸟发问?? ATL编写ASP组件时,报告错误error LNK2001: unresolved external symbol _IID_IResponse 几个问题!关于CEdit和CFontDialog的????? 为什么不能赋值? 不同字段的两个表的合并 使用OBDC读取Excel表格数据
struct file{
int length;
char* ...
};
TRANSMIT_FILE_BUFFERS head;
head.Head = &len; //可能要转换一下
head.HeadLength = sizeof(int);
head.Tail = 0;
head.TailLength = 0; TransmitFile(sock, //客户端的连接socket
hFile, //abc.exe的文件句柄
0, //发送的文件数据长度
0, //每次发送的大小
0, //重叠IO,不会就填0,会的就去折腾
&head, //指定在发送文件数据前和后,先和后发送的数据
TF_USE_KERNEL_APC | TF_WRITE_BEHIND);
一样的发送
现在才晓得,混合还能一起发送~~~~