2015-01-17 20:00:57|?次阅读|上传:wustguangh【已有?条评论】发表评论
关键词:C/C++, 网络通信|来源:唯设编程网
本文介绍Windows环境使用SOCKET实现一个简易的FTP客户端,旨在介绍SOCKET的基本用法和FTP的相关原理,虽然有其它更为高效、便捷的方式(如使用MFC封装的CFtpConnection类),但是通过使用SOCKET这种比较原始的方式更加有助于我们对网络通信的基本概念,以及FTP服务器的工作原理有更加深刻的理解。
首先定义一段测试代码,我们最基本的目标就是使得这段测试代码正常运行:
void CSocketApplicationDlg::OnBnClickedButton1()
{
m_OutPutList.ResetContent();
//登录
CFTP ftpclient("127.0.0.1");
int err;
err = ftpclient.ftp_connect();
if(err){
puts(_T("connect ftp server failed"));
return;
}
puts(_T("connect ok"));
err = ftpclient.ftp_login("***","******");
if(err){
puts(_T("login failed"));
return;
}
puts(_T("login ok"));
err = ftpclient.ftp_upload("E:/Test/发动机缸体加工工艺.doc","/20150110","发动机缸体加工工艺1.doc");
if(err){
puts(_T("upload failed"));
return;
}
puts(_T("upload ok"));
err = ftpclient.ftp_download("E:/Test/movie001.mov","/ygh/movie001_1000.mov");
if(err){
puts(_T("download failed"));
return;
}
puts(_T("download ok"));
err = ftpclient.ftp_quit();
if(err){
puts(_T("quit failed"));
return;
}
puts(_T("you quit"));
}