Visual C++网络编程经典案例详解 第4章 FTP浏览器 FTP文件处理 获取FTP服务器文件信息 获取文件列表

本文详细讲解了如何使用Visual C++进行FTP编程,包括获取FTP服务器的文件列表信息。用户需要向服务器发送LIST命令,并在PORT模式下提供本地IP和端口号。在接收服务器的连接请求时,需设置套接字为非阻塞模式,并通过自定义消息WM_ACCEPT响应连接。当连接建立后,使用recv()函数接收服务器返回的文件列表。
摘要由CSDN通过智能技术生成

用户编程时 需要获取FTP服务器文件的列表
以便查看文件的相关信息

一般情况下
FTP文件列表信息是通过客户端和服务器之间的数据通道获取
编程中
用户可以向服务器发送LIST命令
服务器接收到该命令以后会向客户端返回FTP目录下的文件列表信息
需要用户注意
在PORT模式下传输数据
客户端需要向服务器提交本地IP地址和用于返回数据的端口号

CSocket m_Client; //客户端套接字变量
CString m_host;  //IP地址字符串变量
UINT nport,port=111; //端口号 
m_Client.GetSockName(m_host,nport); //调用函数获得本地的IP地址
m_host.Format(m_host+",%d",port);  //格式化字符串


用户使用PORT命令可以向服务器发送端口号码
"PORT" + string
string表示已经格式化的IP和端口字符串

m_archive->WriteString("PROT "+m_host+"\r\n");
//调用CArchive类的WriteString()函数发送
m_archive->Flush();


客户端发送端口之后
必须在该端口上进行监听
以便接受服务器的连接请求
监听代码如下
m_Client.Create(111,SOCK_STREAM,NULL); //创建在111端口上监听的套接字
m_Client.Listen(); //进行监听

当用户向服务器发送LIST命令后
服务器会向客户端提供IP地址和端口号发出连接请求

try
{
    m_archive->WriteString(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值