用VB创建FTP组件(put)
2024-07-21 02:15:41
供稿:网友
基本步骤是:
1、调用internetopen函数设置环境。
2、调用internetconnect 函数连接主机。
3、调用ftpputfile 函数得到文件。
4、用internetclosehandle 函数关闭第1、2步的句柄。
当使用ftpgetfile 时与上面的步骤看起来完全一样。事实上唯一的区别是在第3步中调用了ftpputfile 。vb特定调用这一函数的声明是:
private declare function ftpputfile lib "wininet.dll" alias "ftpputfilea" _
(byval hftpsession as long, byval lpszlocalfile as string, _
byval lpszremotefile as string, byval dwflags as long, _
byval dwcontext as long) as boolean
第一个参数hftpsession 是internetconnect 调用返回的句柄值。
lpsznewfile 和lpszremotefile 分别是本地机上的文件名和将在远程主机上创建的文件名。
参数dwflags 指定为1时,用ascii 传输文件(a类传输方法),指定为2是用二进制传输文件(1类传输方法)。由于dirmap.txt 是ascii 文本文件,我们传递值1。
最后,当使用回叫信号时,lcontext 用来识别应用程序前后关系。因为在我们的例子中不使用回叫信号,所以这个值为0。
以下是得到dirmap.txt文件并将其存在 c:/dirmap.txt的调用。
blnrc = ftpputfile(lnginetconn, “c::/dirmap.txt”, “dirmap.txt”, 1, 0)
如果函数调用成功,blnrc为 true, 反之为false。
你可以看到,把文件放到ftp服务器上与从ftp服务器上得到文件一样简单。有一点要注意,匿名用户无权在ftp服务器上创建文件。所以要确定用来与ftp服务器连接的用户帐号要有创建文件的权限。不然的话,ftpputfile函数调用就会返回false,说明put 失败了。
注册会员,创建你的web开发资料库,