如何捕获这样的文件下载

bborn 2008-06-12 05:10:25
地址类似这样 http://www.baidu.com/music.mp3
返回的样式如下

Content-type: file
Content-Disposition: attachment; filename="9.mp3"

这样的地址用 bho 也得不到正确的url
我想截获这个下载 该如何做了?
...全文
138 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
bborn 2008-06-14
  • 打赏
  • 举报
回复
to jameshooo

http://support.microsoft.com/default.aspx?scid=kb;EN-US;q260840#appliesto

msdn 上这个IInternetProtocol的例子怎么无法正常工作

dll 都不会被load

已经注册了 注册表中也可以看到
cppwin 2008-06-14
  • 打赏
  • 举报
回复
比较奇怪.
何不把该url贴出来?
http://www.baidu.com/wf/ --- 这个是无效滴
bborn 2008-06-13
  • 打赏
  • 举报
回复
有没有具体例子能看下
对这些不太熟悉
rageliu 2008-06-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 bborn 的回复:]
说错了一点 地址是这样的
http://www.baidu.com/wf/

返回的如上
没有3xx


[/Quote]

确定包抓全了吗?没有结果代码号?不应该吧
jameshooo 2008-06-13
  • 打赏
  • 举报
回复
BeforeNavigate2确实不保险,很多情况它不被调用。用命名空间过滤器解决吧。
bborn 2008-06-13
  • 打赏
  • 举报
回复
to jameshooo

BeforeNavigate2中得到的url 还是我输入的url 不是转向的
蒋晟 2008-06-12
  • 打赏
  • 举报
回复
server肯定根据session来重定向了,通常session id都在cookie里面。
你可以在IDownloadManager::Download里面得到http header,在BHO里面访问DOM得到cookie。
jameshooo 2008-06-12
  • 打赏
  • 举报
回复
2楼是在问你HTTP响应码是否表示需要重定向,如果重定向就需要按照重新发送新的URL请求。

如果是BHO,不需要分析HTTP响应码,有两种方式可以捕获正确的URL:
1、挂接浏览器接口的DWebBrowserEvents2事件,在BeforeNavigate2中截获URL;
2、实现一个命名空间过滤器IInternetProtocolRoot,在Start里面捕获URL。
bborn 2008-06-12
  • 打赏
  • 举报
回复
说错了一点 地址是这样的
http://www.baidu.com/wf/

返回的如上
没有3xx

rageliu 2008-06-12
  • 打赏
  • 举报
回复
为什么返回的是:9.mp3
也就是说http://www.baidu.com/music.mp3不是真正的地址?
返回值是否是3XX?
yjgx007 2008-06-12
  • 打赏
  • 举报
回复
InternetReadFile不行吗?

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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