用Inet1.OpenURL下载图片,但是得到零字节.请问为什么???

tgc99 2008-03-14 04:01:01

Dim b() As Byte

strURL11="http://static15.photo.sina.com.cn/bmiddle/562621d04406d240cf69e"
strURL22="http://static2.photo.sina.com.cn/bmiddle/562621d044155f2ff1a71"

b() = Inet1.OpenURL(strURL11, icByteArray)

strURL11这个载不下来..

strURL22这样的图片地址却没问题,可以保存.

这两个图片地址,都是新浪博客内容里的..为什么有的可以载,有的不行呢??是不是新浪加了防盗连呢??

请高手帮忙..
...全文
197 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
tgc99 2008-03-18
  • 打赏
  • 举报
回复
问题还没有解决..

那个图片网址,时不时的就不能访问连接..
所以有时能下载,有时不能下载...

还是先结贴吧..
cbm6666 2008-03-15
  • 打赏
  • 举报
回复
呵呵....两张都很容易就下载下来啦,图片小所以超快

'添加 Command1

Option Explicit
Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long '-下载文件
Dim fname$, StartTm&, lngRetVal&
Private Sub Command1_Click()
fname = "c:\test1.jpg"
If Dir(fname) <> "" Then Kill fname
DownloadFile "http://static2.photo.sina.com.cn/bmiddle/562621d044155f2ff1a71", fname
'DownloadFile "http://static15.photo.sina.com.cn/bmiddle/562621d04406d240cf69e", fname
End Sub

Public Sub DownloadFile(URL As String, LocalFilename As String)
lngRetVal = URLDownloadToFile(0, URL, LocalFilename, 0, 0)
If lngRetVal = 0 Then MsgBox "下载完成"
End Sub

tgc99 2008-03-15
  • 打赏
  • 举报
回复
这个API我试了,,在我这下载是正常的..等我抽空去客户那边试试..谢谢你呀..成功了就给分!!



[Quote=引用 8 楼 cbm666 的回复:]
我这里随时都可以快速的便下载了这两张图片.

你用我的代码也不能下载吗? 有点怪....
[/Quote]
cbm6666 2008-03-15
  • 打赏
  • 举报
回复
我这里随时都可以快速的便下载了这两张图片.

你用我的代码也不能下载吗? 有点怪....
tgc99 2008-03-15
  • 打赏
  • 举报
回复
在家里上网,,又试了几下.开始strURL11="http://static15.photo.sina.com.cn/bmiddle/562621d04406d240cf69e" 可以载下来,然后再载,,就不行了.读到的字节是0..

可是在客户的机器上,根本就载不下来..
tgc99 2008-03-15
  • 打赏
  • 举报
回复
当时发现,,网址里包括"static15"的,,就载不下来..
tgc99 2008-03-15
  • 打赏
  • 举报
回复
说明一下...我在家里就能下载...在客户那边的内网机器上就不能载..我觉得还是新浪作了什么防盗用功能了..
嗷嗷叫的老马 2008-03-14
  • 打赏
  • 举报
回复
......这个原理你都找到了,自己构造个HTTP请求再用WINSOCK发送一下不就行了.....

之前我写了个多线程下载例子,你可以参考下.

顺便帮我测试一下是否稳定,嘿嘿:)

http://www.m5home.com/blog/article.asp?id=65
tgc99 2008-03-14
  • 打赏
  • 举报
回复
查到了点资料,,

防盗链原理:

http标准协议中有专门的字段记录referer

一来可以追溯上一个入站地址是什么

二来对于资源文件,可以跟踪到包含显示他的网页地址是什么。

因此所有防盗链方法都是基于这个Referer字段
supergreenbean 2008-03-14
  • 打赏
  • 举报
回复
偶看是可以下载的

可能是网络问题吧。你重试下看看咯。

1,502

社区成员

发帖
与我相关
我的任务
社区描述
VB 网络编程
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧