FTP中GetFile不能获取文件到本地

danlansky 2004-12-04 08:10:32
//获得FTP连接
CInternetSession session("FTP Session");
CFtpConnection *pConn=NULL;
pConn=session.GetFtpConnection(FtpIp,FtpUsr,FtpPwd);//成功
......
//请问:用如下函数GetFile时,该函数总返回0(失败),不能获取指定目录下的文件到本地.但是我用相同的用户名/密码/IP地址telnet到UNIX服务器后,手动get可以获取指定目录下的文件,请指教.
int nRet = 0;
nRet = pConn->GetFile(ftp_file,obj_file,FALSE,FILE_ATTRIBUTE_NORMAL,FTP_TRANSFER_TYPE_ASCII,1))
//说明:服务器指定目录下的文件属主不是FtpUsr,但是既然手动可以get,为什么用函数就不可以呢?
...全文
402 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
danlansky 2004-12-07
  • 打赏
  • 举报
回复
没有人来,今天要结贴了。
danlansky 2004-12-05
  • 打赏
  • 举报
回复
我自己把这个帖子顶一下!渴望得到大家的关注和帮助。谢谢。
danlansky 2004-12-05
  • 打赏
  • 举报
回复
我是想用如下方法获取:
CInternetSession session("FTP Session");
CFtpConnection *pConn=NULL;
pConn=session.GetFtpConnection(FtpIp,FtpUsr,FtpPwd);
pConn->GetFile(ftp_file,obj_file,FALSE,FILE_ATTRIBUTE_NORMAL,FTP_TRANSFER_TYPE_ASCII,1));

oyljerry 2004-12-04
  • 打赏
  • 举报
回复
CInternetFile* pFtpFile = NULL;
CFtp ftp;
if( !ftp.Connect( "ftp://????", NULL, NULL ) ) //具体是你的ftp服务器的地址、后面两个参数是用户名和密码,如果位NULL则使用匿名登陆
{
// Message( "同服务器连接失败,请稍后再试!" );
return;
}

//Message( "同ftp服务器连接成功!" );

try
{
pFtpFile = ftp.OpenFile( "要下载的文件名", GENERIC_READ );
}
catch ( CInternetException* pEx )
{
//TCHAR szErr[1024];
//if ( pEx->GetErrorMessage( szErr, 1024 ) )
//Message( szErr );
pEx->Delete();
}

char szBuff[1025];
while( TRUE )
{
UINT uiReads = pFtpFile->Read( szBuff, 1024 );
//出来szBuff中的数据...
if( uiReads != 1024 ) break; //已经下载完毕
}

pFtpFile->Close();
delete pFtpFile;

EnochShen 2004-12-04
  • 打赏
  • 举报
回复
我有一个FTPCLIENT的例子,里面有中文注释,EnochShen@QQ.com

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧