您的位置:首页 > 编程语言 > PHP开发

vc实现简单的ftp上传和下载功能

2010-12-21 10:11 696 查看
#include <afxinet.h>
void CFtpHandleDlg::OnOK()
{
// TODO: Add extra validation here
CInternetSession *m_pInternetSession=new CInternetSession(AfxGetAppName(),1,PRE_CONFIG_INTERNET_ACCESS);
CFtpConnection *m_pFtpConnection;
try{
m_pFtpConnection=m_pInternetSession->GetFtpConnection("127.0.0.1","123456","123456");
if(m_pFtpConnection != NULL)//链接成功
{
CFtpFileFind FtpFinder( m_pFtpConnection ) ;
CString FtpPath="/123/123.xls";
CString LocalPath ="D://456//456.xls";
if( !( m_pFtpConnection->GetFile( FtpPath, LocalPath, true, FILE_ATTRIBUTE_NORMAL , FTP_TRANSFER_TYPE_BINARY , 1) ) )
{
DWORD dErr = GetLastError() ;
CString sErr;
sErr.Format( "下载失败: ERROR %d" ,dErr ) ;
AfxMessageBox(sErr);
}
FtpPath="/123/456.xls";
if( !( m_pFtpConnection->PutFile( LocalPath, FtpPath, FTP_TRANSFER_TYPE_BINARY, 1) ) )
{
DWORD dErr = GetLastError() ;
CString sErr;
sErr.Format( "上传失败: ERROR %d" ,dErr ) ;
AfxMessageBox(sErr);
}

}
}catch(CInternetException *pEx){
TCHAR szError[1024];
if(pEx->GetErrorMessage(szError,1024))
AfxMessageBox(szError);
else
AfxMessageBox("There was an exception");
pEx->Delete();
m_pFtpConnection=NULL;
}
if(m_pFtpConnection != NULL)
{
m_pFtpConnection->Close();
delete m_pFtpConnection;
}
delete m_pInternetSession;
//CDialog::OnOK();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: