WEB开发网
开发学院软件开发VC 用VC++5.0编写Ftp客户程序 阅读

用VC++5.0编写Ftp客户程序

 2008-11-14 19:34:49 来源:WEB开发网   
核心提示: CSuperFTPView,CAboutDlg,其次,用VC++5.0编写Ftp客户程序(2),建立几个新类,如下表:有关Ftp协议请参考相关资料,MB_ICNWARNING);return FALSE;}BeginWaitCursor();//向由fservername指定的主机发出连接

CSuperFTPView,

CAboutDlg。

其次,建立几个新类,如下表:

有关Ftp协议请参考相关资料,这是正确开发Ftp客户程序的重要前提。

第三步,具体程序的编制。由于整个程序比较长,下面给出主要部分的核心代码并附注释。

1.MainFrm.cpp:
……
CMainFrame::CMainFrame()

//初始化指针
m_ctrlconn=NULL;
m_dataconn=NULL;
m_recvconn=NULL;

//选择菜单项“快速连接”
void CMainFrame::OnQuickconnect()

if(!Makeconn())
MessageBox(“FTP控制链路建立失败!”,“提示”,MB_ICONWARNING);
if(!MakeRemoteDir())
MessageBox(“FTP数据链路建立失败!”,“提示”,MB_ICONWARNING);

//建立控制链路
BOOL CMainFrame::Makeconn()

……
Quickconn dlg;
//输入服务器名,用户名,口令
if (dlg.DoModal()==IDOK)

fservername=dlg.m_servername;
fusername=dlg.m_username;
fpassword=dlg.m_password;

m_ctrlconn=new ctrlsocket();
//建立一个SOCKET
If(!m_ctrlconn->Create(0,SOCK_STREAM,NULL)

delete m_ctrlconn;
m_ctrlconn=NULL;
MessageBox(“Socket()建立失败!”,“提示”,MB_ICONWARNING);
return FALSE;

//申请网络事件通知
If(!m_ctrlconn->AsyncSelect(FD_READ|FD_WRITE|FD_ACCEPT|FD_CONNECT|FD_CLOSE))

MessageBox(“AsyncSelect()错误!”,“提示”,MB_ICNWARNING);
return FALSE;

BeginWaitCursor();
//向由fservername指定的主机发出连接请求
if(!m_ctrlconn->Connect(fservername,IPPORT_FTP))

delete m_ctrlconn;
m_ctrlconn=NULL;
MessageBox(远端服务器连接失败!”,“提示”,MB_ICONWARNING);
return FALSE;

EndWaitCursor();
……
return TRUE;

如果选择了“匿名”登录,应用程序则自动将用户姓名和口令字填充为:anonymous,guest@unknown

Tags:VC 编写 Ftp

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接