首页 > 代码库 > 利于Wininet创建一个FTP客户端的步骤

利于Wininet创建一个FTP客户端的步骤

Wininet是Win32关于网络的API,MFC也有对于Wininet的封装,可以利用这组API实现FTP和HTTP通信。

Wininet API的头文件:Wininet。下面是Wininet建立FTP客户端的一般步骤。第一步:初始话Wininet,实际上就是设置一些关于是否使用代理,访问方式等的参数。第二步:建立一个FTP链接。第三步:操作ftp服务器上的文件。第四步:关闭各种句柄。                     

作用 函数原型 说明
初始Wininet函数

HINTERNET InternetOpen( LPCTSTR lpszAgent,                       

                                      DWORD dwAccessType,          

                                      LPCTSTR lpszProxyName,        

                                      LPCTSTR lpszProxyBypass,      

                                      DWORD dwFlags );    

     lpszAgent表示程序的名称,不是对话框的名称。dwAccessType表示链接方式:直接连接和使用代理。dwFlags表示链接选项,可以是,INTERNET_FLAG_ASYNC,

INTERNET_FLAG_FROM_CACHE,

INTERNET_FLAG_OFFLINE的组合

创建Internet链接

HINTERNET InternetConnect( HINTERNET hInternet,       

                                          LPCTSTR lpszServerName,    

                                          INTERNET_PORT nServerPort, 

                                          LPCTSTR lpszUsername,         

                                         LPCTSTR lpszPassword,     

                                          DWORD dwService,           

                                          DWORD dwFlags,             

                                          DWORD_PTR dwContext );

hInternet是InternetOpen返回的句柄,

dwFlags表示链接的类型。

INTERNET_SERVICE_FTP:FTP链接;

INTERNET_SERVICE_HTTP:HTTP链接;

 

上传文件

BOOL FtpPutFile( HINTERNET hConnect,

                         LPCTSTR lpszLocalFile, 

                         LPCTSTR lpszNewRemoteFile,

                         DWORD dwFlags,            

                         DWORD_PTR dwContext );

 
下载文件

BOOL FtpGetFile(  HINTERNET hConnect,

                         LPCTSTR lpszRemoteFile,

                         LPCTSTR lpszNewFile,

                       BOOL fFailIfExists,                             

                         DWORD dwFlagsAndAttributes,                    

                         DWORD dwFlags,

                         DWORD_PTR dwContext );

 
删除文件

BOOL FtpDeleteFile( HINTERNET hConnect,

                             LPCTSTR lpszFileName );

 
删除文件

BOOL FtpRenameFile( HINTERNET hConnect,

                               LPCTSTR lpszExisting,

                               LPCTSTR lpszNew );

 
创建文件夹

  BOOL FtpCreateDirectory(HINTERNET hConnect,

                                      LPCTSTR lpszDirectory );

 
删除文件夹

BOOL FtpRemoveDirectory( HINTERNET hConnect,

                                        LPCTSTR lpszDirectory );