打印本文 打印本文  关闭窗口 关闭窗口  
利用Internet传输控件来使用FTP
作者:佚名  文章来源:不详  点击数  更新时间:2008/5/24 20:04:37  文章录入:杜斌  责任编辑:杜斌

  现在是该设置控件属性的时候了:

  将URL属性设置为FTP服务器的URL。

  将用户名(Username)和密码(Password)的属性设置为合法的用户ID和密码,这也是FTP所要用到的。(如果你将这些属性留成空白,那么用户名属性就会被设置为匿名(anonymous),而密码属性会被设置为一个缺省的密码。)

  将协议(Protocol)属性设置为icFTP,这是访问FTP所需要的。设置一下RequestTimeout,以防止在服务器没有相应的时候控件挂起。例如:

  With Inet1

  .URL = "ftp://myftpserver"

  .UserName = "myusername"

  .Password = "mypassword"

  .Protocol = icFTP

  .RequestTimeout = 120

  End With

  要进行GET或者PUT操作,就要调用Execute方法。第一个自变量是可选的,它允许你指定URL。第二个自变量能够让你指定要进行的操作。当GET操作被调用的时候,你必须传递被请求文件的名称和要创建的本地文件名。当PUT操作被调用的时候,要被上传的文件就会被指定,然后就在FTP服务器上创建这个文件。

  Call Inet1.Execute(, "GET ftpfile.txt c:\temp\ftpfile.txt")

  Call Inet1.Execute(, "PUT c:\temp\ftpfile.txt ftpfile2.txt")

  Execute方法是异步工作的,所以你可以使用StateChanged事件来监控这项操作的进展情况。State自变量会是一个StateConstant。你可以使用对象浏览器(Object Browser)或者在线帮助(Online Help)来查看State所有合法的值。

  Private Sub Inet1_StateChanged(ByValState As Integer)

  Debug.PrintState

  End Sub

  如果State等于icError,那么你可以通过ResponseCode和ResponseInfo属性来获取错误信息。

  Debug.Print Inet1.ResponseCode

  Debug.Print Inet1.ResponseInfo

打印本文 打印本文  关闭窗口 关闭窗口