24小时热门版块排行榜    

CyRhmU.jpeg
查看: 424  |  回复: 0

叉子哥

新虫 (小有名气)

[求助] 求大神帮忙解决下

本人做了简单的MFC程用Socket类建立了客户端和服务器端,想实现图像传输的功能,现在做出来,点击发送,客户端死机,但是打开客户端的文件里会出现图片的名,只是显示零字节,请教大神如何修改,是怎么样的原因··另附程序
void CTCPFuWuQiDlg::OnSendImage()
{
        // TODO: Add your control notification handler code here
//  CFile File;
        char data[ReadSize];//用于存放读入的数据块
        long ByteSended=0,FileLength,Count;
//        CFileDialog FoundFile(true);//寻找文件对话框
        CString FileName;
        char FN[40];
        void Open(int)
    File.Open("D:\\1";
/*        if(FoundFile.DoModal()==IDOK)
        {
                //选择文件
                FileName=FoundFile.GetFileName();
                if(!File.Open(FileName.GetBuffer(0),
                        CFile::modeCreate|CFile::typeBinary))
                {
                        AfxMessageBox("打开文件错误,取消发送!";
                        return;
                }
                strcpy(FN,FileName.GetBuffer(0));
        }
        else return;//按了取消按钮
*/
        FileName=File.GetFileName();
    strcpy(FN,FileName.GetBuffer(0));

        FileLength=File.GetLength();//获取文件长度
        MySendSocket.Send(&FileLength,sizeof(long));//发送文件长度
        MySendSocket.Send(FN,40);//发送文件名
        memset(data,0,sizeof(long));//初始化内存区data块为0
    do{
                //从文件读取数据,每次最多读入ReadSize个字节。
                //Count表示实际读入的字节数
                Count=File.ReadHuge(data,ReadSize);
                //发送数据
        while(SOCKET_ERROR==MySendSocket.Send(data,Count))
                //阻塞发送模式
                {
                }
                //统计已发送的字节数
                ByteSended=ByteSended+Count;
        }while(ByteSended<FileLength);
        File.Close();
}
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : 对话框下的TCP.zip
  • 2014-06-05 17:24:05, 12.66 M

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

智能机器人

Robot (super robot)

我们都爱小木虫

相关版块跳转 我要订阅楼主 叉子哥 的主题更新
信息提示
请填处理意见