代码如下:
第一次可以得到所上传的确文件大小,第二次时InternetOpen的返回值为0了.char g_chSourFileName[10][MAX_PATH];
char g_chDestFileName[10][MAX_PATH];BOOL ftpTest()
{
int i = 0 ;
BOOL bResult ;
HINTERNET hInternet;
HINTERNET hConnect; DWORD dwFileSize;
DWORD dwFileSizeHigh;
HINTERNET hFileOpen; hInternet=InternetOpen( NULL,INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,INTERNET_FLAG_NO_CACHE_WRITE|INTERNET_FLAG_ASYNC);
if(hInternet == NULL)
{
return FALSE;
}
hConnect=InternetConnect(hInternet,"127.0.0.1",INTERNET_DEFAULT_FTP_PORT,"abc","abc",INTERNET_SERVICE_FTP,
INTERNET_FLAG_PASSIVE | INTERNET_FLAG_EXISTING_CONNECT,NULL); if(hConnect == NULL)
{
InternetCloseHandle(hInternet);
return FALSE;
}
for(i = 0 ; i < 10 ; i++)
{
bResult = FtpPutFile(hConnect,g_chSourFileName[i],g_chDestFileName[i],FTP_TRANSFER_TYPE_BINARY|INTERNET_FLAG_RELOAD, NULL);
if(bResult != TRUE)
{
InternetCloseHandle(hConnect);
InternetCloseHandle(hInternet);
return FALSE;
} hFileOpen = FtpOpenFile(hConnect,g_chDestFileName[i],GENERIC_READ,INTERNET_FLAG_TRANSFER_BINARY|INTERNET_FLAG_RELOAD,NULL);
if(hFileOpen == NULL)
{
InternetCloseHandle(hConnect);
InternetCloseHandle(hInternet);
return FALSE;
}
dwFileSize = FtpGetFileSize(hFileOpen,&dwFileSizeHigh); TRACE("%s---->%d\n",g_chDestFileName[i],dwFileSize);
}
InternetCloseHandle(hConnect);
InternetCloseHandle(hInternet); return TRUE;
}void CFTPDlg::OnStart()
{
int i = 0;
for(i = 0 ; i < 10 ; i++)
{
memset(g_chSourFileName[i],0,sizeof(g_chSourFileName[i]));
sprintf(g_chSourFileName[i],"c:\\cpp%d.pdf",i);
} for(i = 0 ; i < 10 ; i++)
{
memset(g_chDestFileName[i],0,sizeof(g_chDestFileName[i]));
sprintf(g_chDestFileName[i],"ok%d.pdf",i);
}
ftpTest();
}
第一次可以得到所上传的确文件大小,第二次时InternetOpen的返回值为0了.char g_chSourFileName[10][MAX_PATH];
char g_chDestFileName[10][MAX_PATH];BOOL ftpTest()
{
int i = 0 ;
BOOL bResult ;
HINTERNET hInternet;
HINTERNET hConnect; DWORD dwFileSize;
DWORD dwFileSizeHigh;
HINTERNET hFileOpen; hInternet=InternetOpen( NULL,INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,INTERNET_FLAG_NO_CACHE_WRITE|INTERNET_FLAG_ASYNC);
if(hInternet == NULL)
{
return FALSE;
}
hConnect=InternetConnect(hInternet,"127.0.0.1",INTERNET_DEFAULT_FTP_PORT,"abc","abc",INTERNET_SERVICE_FTP,
INTERNET_FLAG_PASSIVE | INTERNET_FLAG_EXISTING_CONNECT,NULL); if(hConnect == NULL)
{
InternetCloseHandle(hInternet);
return FALSE;
}
for(i = 0 ; i < 10 ; i++)
{
bResult = FtpPutFile(hConnect,g_chSourFileName[i],g_chDestFileName[i],FTP_TRANSFER_TYPE_BINARY|INTERNET_FLAG_RELOAD, NULL);
if(bResult != TRUE)
{
InternetCloseHandle(hConnect);
InternetCloseHandle(hInternet);
return FALSE;
} hFileOpen = FtpOpenFile(hConnect,g_chDestFileName[i],GENERIC_READ,INTERNET_FLAG_TRANSFER_BINARY|INTERNET_FLAG_RELOAD,NULL);
if(hFileOpen == NULL)
{
InternetCloseHandle(hConnect);
InternetCloseHandle(hInternet);
return FALSE;
}
dwFileSize = FtpGetFileSize(hFileOpen,&dwFileSizeHigh); TRACE("%s---->%d\n",g_chDestFileName[i],dwFileSize);
}
InternetCloseHandle(hConnect);
InternetCloseHandle(hInternet); return TRUE;
}void CFTPDlg::OnStart()
{
int i = 0;
for(i = 0 ; i < 10 ; i++)
{
memset(g_chSourFileName[i],0,sizeof(g_chSourFileName[i]));
sprintf(g_chSourFileName[i],"c:\\cpp%d.pdf",i);
} for(i = 0 ; i < 10 ; i++)
{
memset(g_chDestFileName[i],0,sizeof(g_chDestFileName[i]));
sprintf(g_chDestFileName[i],"ok%d.pdf",i);
}
ftpTest();
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货