《Visual C++范例完全自学手册》点对点文件传输
发表在C语言图书答疑 2010-03-29
是否精华
版块置顶:
在WindowsXp Sp2环境下VC6编译《Visual C++范例完全自学手册》点对点文件传输的示例代码,出现如下警告信息:
class  CPackage
{
public:
PackageType m_Type;   //数据包类型
SendFlag m_Flag;   //文件发送标记
DWORD m_dwSize;   //数据报结构大小
DWORD m_dwFileSize;   //整个文件大小
DWORD m_dwData;   //m_Data的大小
BYTE m_Data[];   //数据缓冲区
};
中的BYTE m_Data[]; //warning C4200: nonstandard extension used : zero-sized array in struct/union
while ((SunSize >= nPackage) && (SunSize >= pPackage->m_dwData))  //warning C4018: '>=' : signed/unsigned mismatch
if (nFileLen >= dwFileSize)  //warning C4018: '>=' : signed/unsigned mismatch

并且在局域网中测试文件传输,Client和Sever程序连接成功,传输文件时在Client端点击“保存”文件后就没反应了,进度条没有变化,在Client端创建了接受的文件,但是文件大小比实际文件大小小很多。
请问一下是什么原因?
分享到:
精彩评论 1
8031
学分:0 LV1
2010-03-29
沙发
出现警告是因为m_Data数组没有指定下标,没指定的原因是使用动态分配,注意传输的文件不要太大,在Receivedata方法中有最大长度限制,请仔细看一下。
首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照