谁做过利用socket编程,实现多个文件远程传输方面的工程?
谁做过利用socket编程,实现多个文件远程传输方面的工程?
说说思路??谢谢
问题点数:0、回复次数:8Top
1 楼DentistryDoctor(Data Recovery -- http://www.powerdatarecovery.com)回复于 2005-02-01 09:02:34 得分 0
与一般的传输又有何异?Top
2 楼mikelearner(初学者)回复于 2005-02-01 09:19:24 得分 0
刚做过,不过知道“多个文件远程传输”这个什么意思?Top
3 楼healer_kx(甘草(楼主揭贴吧,我们这些上班灌水的也不容易))回复于 2005-02-01 09:26:57 得分 0
一个一个传呗Top
4 楼sharkhuang(走吧走吧!人总会慢慢长大~)回复于 2005-02-01 09:57:26 得分 0
ftp server就能满足你得要求Top
5 楼huntzhang8(一片云)回复于 2005-02-01 10:45:05 得分 0
把要传输的本地文件完全路径获得后,根据这个路径扫描到的文件就可以传输了Top
6 楼xjtuzhw(飞影(★和谐社会,狗才谈政治★))回复于 2005-02-01 10:48:12 得分 0
我只做过局域网多连接多文件传输
利用UDP发送广播通知各Client端连接FTP服务器,自主下载文件Top
7 楼carbon107(<软件开发思想.h>)回复于 2005-02-01 10:56:25 得分 0
一个一个的传
可以通过这个东东,下面是我以前做的一个传文件的东东,下而是个片断,希望对你有所帮助
SOCKET_STREAM_FILE_INFO StreamFileInfo;
WIN32_FIND_DATA FindFileData;
FindClose(FindFirstFile(file, &FindFileData));
memset(&StreamFileInfo,0,sizeof(SOCKET_STREAM_FILE_INFO));
strcpy(StreamFileInfo.szFileTitle,myFile.GetFileTitle());
StreamFileInfo.dwFileAttributes = FindFileData.dwFileAttributes;
StreamFileInfo.ftCreationTime = FindFileData.ftCreationTime;
StreamFileInfo.ftLastAccessTime = FindFileData.ftLastAccessTime;
StreamFileInfo.ftLastWriteTime = FindFileData.ftLastWriteTime;
StreamFileInfo.nFileSizeHigh = FindFileData.nFileSizeHigh;
StreamFileInfo.nFileSizeLow = FindFileData.nFileSizeLow;
m_pDoc->sockSvr->Send(&StreamFileInfo,sizeof(SOCKET_STREAM_FILE_INFO));
UINT dwRead=0;
while(dwRead<StreamFileInfo.nFileSizeLow)
{
byte* data = new byte[1024];
UINT dw=myFile.Read(data, 1024);
m_pDoc->sockSvr->Send(data, dw);
dwRead+=dw;
}
myFile.Close();Top
8 楼mfkzj(鹰翔)回复于 2005-02-01 11:11:48 得分 0
其实和局域网的没有什么太大的不同 你可以选择TCP、UDP两种传输方式 如果你程度够的话可以使用多线程传递
如果你知道两台机器的IP 很好办!实现程序的端口监听 然后建立连接 将文件打开分部分读取传输(如果是UDP需要确认接受成功)
如果不知道IP 就需要建立一个类似QQ的程序 建立一个服务端 客户端登陆服务器记录IP地址读取对方的IP地址 然后其他的和上面一样了Top




