今天我调用ftpgetfile这个API,查到的格式如下,但第三参数却不能换成变量,一用就出错,请哪位高人指点一下。小弟会非常感谢
ftpgetfile(hconnection, "trms_upgrade\xtgl.exe", "c:\trms\bin\xtgl.exe", false, internet_flag_reload, ftp_transfer_type_binary, 0)
ftpgetfile(hconnection, "trms_upgrade\xtgl.exe", "c:\trms\bin\xtgl.exe", false, internet_flag_reload, ftp_transfer_type_binary, 0)
解决方案 »
- vb如何截取一段文字中所需要的内容?
- 有多少个客户端连接服务端就要有多少个WINSOCK控件吗???
- sql连接正常,但执行sql语句报SQL不存在或者访问被拒绝
- 如何得到TIF文件某一个点的色彩值,多谢
- 急,關於Winsock發送、接收的問題
- inet控件取不到网页代码?
- 怎样才能知道主窗体下,多个子窗体中那个是当前窗体?
- 我记得从我小学的时候学gwbasic时最先学会的是........
- 有关msflexgrid 的问题,请教各位朋友?
- AUTOCAD2000 VBA 的问题!!
- “Label3 = rst”有错误,提示“type mismatch”,请问如何解决?
- 这段代码错在哪里!急~~~
Public Declare Function FtpGetFile Lib "wininet.dll" Alias "FtpGetFileA" _
(ByVal hFtpSession As Long, ByVal lpszRemoteFile As String, _
ByVal lpszNewFile As String, ByVal fFailIfExists As Boolean, ByVal dwFlagsAndAttributes As Long, _
ByVal dwFlags As Long, ByVal dwContext As Long) As Boolean第三个参数是指针(带lp的都是),应该是保存的文件名,不能直接写成字符串,写成字符串哪行啊?
应该这样定义:dim newFile as string *255
DECLARE Integer InternetGetConnectedState IN "wininet.dll" Integer,Integer
? InternetGetConnectedState(0,0)2.自动拨号-使用默认的拨号连接 (IE的INTERNET连接设置里必须设置拨号连接, 另外还有个InternetDial函数,必须使用拨号连接名称)
DECLARE Integer InternetAutodial IN "wininet.dll" Integer,Integer
? InternetAutodial (0,0)3.自动中断拨号或者连接
DECLARE Integer InternetAutodialHangup IN "wininet.dll" Integer
? InternetAutodialHangup(0)4. 获得一个连接句柄
Declare Integer InternetOpen IN "wininet.dll" String, Integer, String, String, Integer
lnOpen= internetOpen("MyFtp",1,null,null,0) 5. 连接到FTP SERVER
Declare Integer InternetConnect in "wininet.dll" Integer,String,Integer,String, String, Integer, Integer, Integer
lnConn=InternetConnect(lnOpen, "ftp.microsoft.com",0 , "anonymous", "[email protected]", 1, 0, 0)6. 下载一个文件. 还有不少FTP或者HTTP的操作文件或页面的函数. 有兴趣者自己去试
Declare Integer FtpGetFile in "wininet.dll" Integer, String, String, Integer, Integer,Integer,Integer
? FtpGetFile(lnConn,''/bussys/readme.txt'',''c:\Temp\msreadme.txt'',0,0,1,0)7. 中断连接
Declare Integer InternetCloseHandle In "wininet.dll" Integer
? InternetCloseHandle(lnConn)
lnginet = InternetOpen(vbNullString,INTERNET_OPEN_TYPE_PRECONFIG, vbNullString, vbNullString, 0&)
lnginetconn = InternetConnect(lnginet, txtFTP.Text, 0, txtUSER.Text, txtPASSWORD.Text, 1, 0, 0) blnRC = FtpGetFile(lnginetconn, ServerFolder & lstServer.List(lstIndex), LocalFolder & lstServer.List(lstIndex), 0, 0, 1, 0) InternetCloseHandle lnginetconn
InternetCloseHandle lnginet
(ByVal sAgent As String, ByVal LAccessType As Long, ByVal sProxyName As String, _
ByVal SProxyBypass As String, ByVal lFlags As Long) As LongPublic Declare Function InternetConnect Lib "wininet.dll" Alias "InternetConnectA" _
(ByVal hInternetSession As Long, ByVal sServerName As String, _
ByVal nServerPort As Integer, ByVal sUsername As String, _
ByVal sPassword As String, ByVal lService As Long, _
ByVal lFlags As Long, ByVal lContext As Long) As LongPublic Declare Function FtpGetFile Lib "wininet.dll" Alias "FtpGetFileA" _
(ByVal hFtpSession As Long, ByVal lpszRemoteFile As String, _
ByVal lpszNewFile As String, ByVal fFailIfExists As Boolean, _
ByVal dwFlagsAndAttributes As Long, ByVal dwFlags As Long, _
ByVal dwContext As Long) As BooleanPublic 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 BooleanPublic Declare Function FtpDeleteFile Lib "wininet.dll" Alias "FtpDeleteFileA" _
(ByVal hFtpSession As Long, ByVal lpszFileName As String) As BooleanPublic Declare Function FtpRenameFile Lib "wininet.dll" Alias "FtpRenameFileA" _
(ByVal hFtpSession As Long, ByVal lpszExsiting As String, ByVal lpszNew As String) As Boolean
blnRC = FtpGetFile(lnginetconn, "vosung /mainn.exe", "d:\mainn.exe", 1, 0, 1, 0)
不要告诉我你的变量没有声明类型(默认为Variant)。
jinhui78:吱一声。