UINT proc1(LPVOID lparam)//文件传输接收线程
{
CideskDlg *pDlg=(CideskDlg*)lparam;
CString str;
SOCKADDR_IN recvaddr;
int len=sizeof(recvaddr);
CFile file;
WIN32_FIND_DATA finddata;
char buf[1024*40];
while(1)
{
DWORD dwRead=0;
UINT dw=0;
memset(buf,0,1024*40);
recvfrom(pDlg->m_socket,(char *)&finddata,sizeof(WIN32_FIND_DATA),0,(sockaddr*)&recvaddr,&len);
DWORD length=finddata.nFileSizeHigh*(MAXDWORD+1)+finddata.nFileSizeLow;
file.Open(L"d:\\111.jpg",CFile::modeCreate|CFile::modeWrite|CFile::typeBinary);
while(dwRead<length)
{
dw=recvfrom(pDlg->m_socket,buf,1024*40,0,(sockaddr*)&recvaddr,&len);
file.Write(buf,dw);
dwRead+=dw;
pDlg->speed+=dw;
}
file.Close();
pDlg->showImg();
}
return 0;
}
{
CideskDlg *pDlg=(CideskDlg*)lparam;
CString str;
SOCKADDR_IN recvaddr;
int len=sizeof(recvaddr);
CFile file;
WIN32_FIND_DATA finddata;
char buf[1024*40];
while(1)
{
DWORD dwRead=0;
UINT dw=0;
memset(buf,0,1024*40);
recvfrom(pDlg->m_socket,(char *)&finddata,sizeof(WIN32_FIND_DATA),0,(sockaddr*)&recvaddr,&len);
DWORD length=finddata.nFileSizeHigh*(MAXDWORD+1)+finddata.nFileSizeLow;
file.Open(L"d:\\111.jpg",CFile::modeCreate|CFile::modeWrite|CFile::typeBinary);
while(dwRead<length)
{
dw=recvfrom(pDlg->m_socket,buf,1024*40,0,(sockaddr*)&recvaddr,&len);
file.Write(buf,dw);
dwRead+=dw;
pDlg->speed+=dw;
}
file.Close();
pDlg->showImg();
}
return 0;
}