wpoykkbiur 发表于 2016-6-9 06:22:36

C语言+API操作FTP下载文件

  工作中需要用到程序更新,从FTP上下载文件是比较方便的。写个日志总结一下昨天的学习情况:
  
  句柄的定义
  HINTERNET hConnect ;
  连接FTP操作,需要定义一个HINTERNET句柄。使用InternetOpen函数进行初始化句柄。
  
  创建FTP会话
  使用InternetConnect函数,连接到FTP,要用到InternetOpen函数初始过的句柄。
  
  设置当前FTP的目录
  FtpSetCurrentDirctory函数,传入地址,支持多级子目录,可以使用"/soft/tool/"这样的多级目录。
  
  下载文件
  FtpGetFile 函数,可以直接下载,或者使用FtpOpenFile打开文件,然后使用InternetReadFile读入缓冲区
  
  遍历文件
  使用2个函数来操作,FtpFindFirstFile调用一次,然后调用InternetFindNextFile进行循环,只到返回FALSE,表示没有文件了。
  遍历的时候,要注意的问题是,一个FTP 会话句柄,如hSesseion进行过一次遍历后,要调用closehandle关闭,否则继续进行遍历时会出错。
  知道这一要点后,要进行递归遍历文件夹中的所有文件总数,问题就变得简单了。
  
  总结,FTP的API函数操作还容易弄懂的,做了一个小小的程序更新软件,方便自己的工作 。

  
  
页: [1]
查看完整版本: C语言+API操作FTP下载文件