请大虾们,尽量写详细一点谢了!!!:)
解决问题,马上给分:)

解决方案 »

  1.   

    这里有文件传送的源码,参考一下:
    http://asp.6to23.com/vcprogram/source/source_right.asp
      

  2.   

    文件传送使用udp协议进行会非常复杂,
    如果用tcp/ip协议会很安全,要根据具体的要求来处理!
      

  3.   

    这是一对实现在两台计算机间传送文件的函数,我没有看到过使用CSocket进行文件传送的代码,希望此代码对你有用.代码中包含两个函数,第一个用于服务器端,第二个用于客户端.
    需要说明的是本文提供的方法并不适用于大型文件的传送.下面给出服务器端代码:void SendFile()
    {
     #define PORT 34000 /// Select any free port you wish AfxSocketInit(NULL);
     CSocket sockSrvr; 
     sockSrvr.Create(PORT); // Creates our server socket
     sockSrvr.Listen(); // Start listening for the client at PORT
     CSocket sockRecv;
     sockSrvr.Accept(sockRecv); // Use another CSocket to accept the connection
     CFile myFile;
     myFile.Open("C:\\ANYFILE.EXE", CFile::modeRead | CFile::typeBinary);  int myFileLength = myFile.GetLength(); // Going to send the correct File Size sockRecv.Send(&myFileLength, 4); // 4 bytes long

     byte* data = new byte[myFileLength];  myFile.Read(data, myFileLength); sockRecv.Send(data, myFileLength); //Send the whole thing now myFile.Close();
     delete data; sockRecv.Close();
    }
    以下是客户端代码 void GetFile()
    {
     #define PORT 34000 /// Select any free port you wish AfxSocketInit(NULL);
     CSocket sockClient;
     sockClient.Create(); // "127.0.0.1" is the IP to your server, same port
     sockClient.Connect("127.0.0.1", PORT);  int dataLength;
     sockClient.Receive(&dataLength, 4); //Now we get the File Size first

     byte* data = new byte[dataLength];
     sockClient.Receive(data, dataLength); //Get the whole thing CFile destFile("C:\\temp\\ANYFILE.EXE", 
      CFile::modeCreate | CFile::modeWrite | CFile::typeBinary); destFile.Write(data, dataLength); // Write it destFile.Close(); delete data;
     sockClient.Close();
    }最好确认服务器端函数在客户端函数之前运行,本文的代码可以方便地添加到工程中,解决服务器/客户模型中的文件传送问题.
      

  4.   

    文件传送和数据流传送没什么区别,只需要一开始发一个报文告知文件的一些信息,包括原始文件名、属性、三个时间、长度等等。接收方接收完毕数据流后将所有信息加在新的文件上。nie173(网流小兔)的代码如果能多加一些文件属性的信息就比较完善了。毕竟文件的时间是很重要的资料。
      

  5.   

    用 TransmitFile() 这个 api 吧,比较快。