【问题标题】:Download FTP VB script下载 FTP VB 脚本
【发布时间】:2015-02-04 22:15:12
【问题描述】:

我有两个不同的文件需要下载并发送到同一个文件,但它们的扩展名不同。一个是.txt,另一个是.log。我如何在我的脚本中下载两个不同的扩展?

【问题讨论】:

  • 到目前为止你做了什么?发布您的代码!
  • 您使用的是什么 FTP 库/API?向我们展示您的代码!

标签: vbscript ftp sftp


【解决方案1】:

只需将 url 从 http 更改为 ftp

通过一个接一个地下载两个文件。

网址必须 100% 正确。与浏览器不同,没有代码可以修复 url。

我的程序的目的是获取错误详细信息。

如何获得正确的 URL 是在浏览器中输入我的 url,导航,正确的 URL 通常在地址栏中。另一种方法是使用链接的属性等来获取 URL。

Microsoft.XMLHTTP 也映射到 Microsoft.XMLHTTP.1.0。 HKEY_CLASSES_ROOT\Msxml2.XMLHTTP 映射到 Msxml2.XMLHTTP.3.0。稍后再试

使用 xmlhttp 试试这个方法。编辑网址等。如果它似乎工作注释掉 if / end if to dump info 即使看起来工作。这是 vbscript 但是 vbscript 在 vb6 中工作。

 On Error Resume Next
 Set File = WScript.CreateObject("Microsoft.XMLHTTP")
 File.Open "GET", "http://www.microsoft.com/en-au/default.aspx", False
 'This is IE 8 headers
 File.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 1.1.4322; .NET CLR 3.5.30729; .NET CLR 3.0.30618; .NET4.0C; .NET4.0E; BCD2000; BCD2000)"
 File.Send
 If err.number <> 0 then 
    line =""
    Line  = Line &  vbcrlf & "" 
    Line  = Line &  vbcrlf & "Error getting file" 
    Line  = Line &  vbcrlf & "==================" 
    Line  = Line &  vbcrlf & "" 
    Line  = Line &  vbcrlf & "Error " & err.number & "(0x" & hex(err.number) & ") " & err.description 
    Line  = Line &  vbcrlf & "Source " & err.source 
    Line  = Line &  vbcrlf & "" 
    Line  = Line &  vbcrlf & "HTTP Error " & File.Status & " " & File.StatusText
    Line  = Line &  vbcrlf &  File.getAllResponseHeaders
    wscript.echo Line
    Err.clear
    wscript.quit
 End If

On Error Goto 0

 Set BS = CreateObject("ADODB.Stream")
 BS.type = 1
 BS.open
 BS.Write File.ResponseBody
 BS.SaveToFile "c:\users\test.txt", 2

还要看看这些其他对象是否有效。

C:\Users>reg query hkcr /f xmlhttp

HKEY_CLASSES_ROOT\Microsoft.XMLHTTP
HKEY_CLASSES_ROOT\Microsoft.XMLHTTP.1.0
HKEY_CLASSES_ROOT\Msxml2.ServerXMLHTTP
HKEY_CLASSES_ROOT\Msxml2.ServerXMLHTTP.3.0
HKEY_CLASSES_ROOT\Msxml2.ServerXMLHTTP.4.0
HKEY_CLASSES_ROOT\Msxml2.ServerXMLHTTP.5.0
HKEY_CLASSES_ROOT\Msxml2.ServerXMLHTTP.6.0
HKEY_CLASSES_ROOT\Msxml2.XMLHTTP
HKEY_CLASSES_ROOT\Msxml2.XMLHTTP.3.0
HKEY_CLASSES_ROOT\Msxml2.XMLHTTP.4.0
HKEY_CLASSES_ROOT\Msxml2.XMLHTTP.5.0
HKEY_CLASSES_ROOT\Msxml2.XMLHTTP.6.0
End of search: 12 match(es) found.

.

另外请注意,在发生锁定之前,您可以调用任何特定 XMLHTTP 对象的次数是有限制的。如果发生这种情况,并且在调试代码时确实如此,只需更改为不同的 xmlhttp 对象

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-27
    • 2010-10-30
    • 2011-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多