我正在尝试编写一个应用程序,它适用于ftp服务器上的文件。我需要在一个ftp连接中打开几个文件。我这样做
CInternetSession session(_T("Session1"));
CFtpConnection* pConnect = NULL;
CInternetFile* pFile1;
CInternetFile* pFile2;
pConnect = session.GetFtpConnection(_T("10.0.172.113"), _T("user11"), _T("12345"));
pFile1 = pConnect->OpenFile(L"folder1\\1.txt",GENERIC_WRITE,FTP_TRANSFER_TYPE_BINARY);
pFile2 = pConnect->OpenFile(L"folder1\\2.txt",GENERIC_READ,FTP_TRANSFER_TYPE_BINARY);
pConnect->Close();
但是打开2.txt抛出的异常。 有没有办法在不创建新的ftp连接的情况下打开两个文件?
答案 0 :(得分:1)
不,没办法http://msdn.microsoft.com/library/vstudio/1st6z7sc.aspx:
调用OpenFile后直到调用CInternetConnection :: Close, 应用程序只能调用CInternetFile :: Read, CInternetFile :: Write,CInternetConnection :: Close,或 CFtpFileFind ::的FindFile。 为同一FTP调用其他FTP功能 会话将失败并将错误代码设置为FTP_ETRANSFER_IN_PROGRESS 。