棘手问题!高分,请赐教。(200分)

  • 主题发起人 主题发起人 OopsWare
  • 开始时间 开始时间
>[xx(][xx(][xx(][xx(] 为什么没人帮我 [xx(][xx(][xx(][xx(]
>我作完了,贴出来,大家给找找有没 BUG 吧!

说的好伤感,呵呵
不是我不帮你,而是你老兄比我厉害,我可是刚刚才能收到DWebBrowserEvent2的
消息阿。

你的代码我看了,不过好像没解决那个问题。就是如果连接不是直接指向下载的
文件的时候怎么办的问题。DownloadBegin没有带参数,好像解决不了这个问题。
而且我觉得应该是有数据有才能判断下载的内容是什么。我还在想是不是会有什
么MIME Type handler之类的东西。

我的代码是C++的,没有delphi写的简洁,就不贴了。
 
重新导出一份 SHDocVw_TLB 可以找到有 FileDownload(var Cancel:WordBool) 事件了。
此事件在所有下载时被激发,如果IE有下载窗口弹出,其 Cancel 为 False。正常的
网页下载是 True。捕获此事件(Cancel为False)。弹出你的对话框,IE的下载线程被
你的程序暂停,如果你要下载就把 Cancel 设成 True,IE就不会弹出他的下载对话框了.
Url可以通过BeforeNavigate2得到。(需要 IE5.5 或以上版本)
MIME好像是定义新的协议用的,如 myprotocol://hostname/.... 我没细研究。
 
我注意了FileDownload,好像是IE 5以上才有的。
我现在有个疑问,如果文件不是下栽,而是inplace activate,像PDF一样
那么会不会出现FileDownload事件?
我没有试,可是猜想不会。
 
Acrbet也是通过此方法获取此事件的,包括FlashGet, NetAnts。至于谁先或的
此事件就看 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/Browser Helper Objects
中谁的 GUID 小了,小的排在前面吗 [:D] 我就想把我的 GUID 设成
{0000000-0000-00000........}[:D][:D][:D]
 
>来自:OopsWare, 时间:2002-1-4 16:39:00, ID:834620
>Acrbet也是通过此方法获取此事件的,

什么方法?FileDownload?
如果是FileDownload和BeforeNavigate2,那么是不是说Acrobat也需要在IE5以上
才能Inplace Activate?
 
DWebBrowserEvents2::FileDownload 事件
http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/webbrowser/reference/ifaces/dwebbrowserevents2/filedownload.asp
http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/webbrowser/reference/events/filedownload.asp
我这都是IE5.5了,也没测试在IE4上是否会出错。
 
今天测试才发现 IE5.0 不支持 FileDownload 。
尚为成功,还需努力! 继续 ....

相关问题见
http://www.delphibbs.com/delphibbs/dispq.asp?lid=849940
 
还是再开题讨论吧,结束。(我的分总是白放了,没有结果....[:(!])
 
竟然有这么多人,订阅此题的邮件通知!是不是不该结束?
那就帮看看这个题吧!
http://www.delphibbs.com/delphibbs/dispq.asp?lid=849940
 

Similar threads

后退
顶部