FTP协议将使用两条单独的TCP连接,一条专用于发送FTP命令,另一条则专用于传递数据。初始建立连接时,服务器在21号端口上接收来自客户端的命令连接。当需要传送数据时(文件列表、文件数据等),客户端向服务器发出Port命令,并进入监听状态,等待来自服务器的数据连接请求。
首先我们利用VC++ 6.0的AppWizard创建一个基于对话框的应用程序,命名为FtpClientDemo。调整主对话框的形式如图1,为程序生成五个基于CAsyncSocket的新类,限于篇幅,只列出主要代码。
图1
■CCommandSocket类的主要代码
void CCommandSocket::OnReceive(int nErrorCode)
{
//这个函数使得服务器的应答消息显示在编辑框上
char
>> 本文固定链接: http://www.vcgood.com/archives/684