我通过 COM/OLE 在我的 win32-C 应用程序中嵌入了默认的 Internet Explorer。 我显示一个网页有一个链接( anchor 标签)来保存/打开一个文件。 当我单击链接时,它会在后台进行一些处理,但不会给我一个要求保存或打开文件的对话框。从 Fiddler 我开始知道它正在写入缓存但无法访问它或显示任何弹出窗口。
我希望看到对话框要求我保存或打开文件(默认)
如果我从 IE 浏览器执行此操作,那么一切正常。
编辑:我尝试了 sample code在其中我确实看到了 Dialog Box为我提供了保存、打开文件的选项,尽管用 my code 记录了所有内容我还是没看到盒子。
我正在考虑无模式对话框问题,但我可以看到 Message Box在我的代码中。所以无模式对话框不会被禁用。
无法了解如何让它工作。
(注:请看附件)
编辑:我在我的代码中编辑了 The EmbedBrowser 函数,我的浏览器没有指向我的 IOleClientSite 对象的指针
新代码:- http://paste.ubuntu.com/1062010/
但问题依然存在!
最佳答案
我想通了这个问题。
接口(interface) DWebBrowserEvents2 的调用方法被实现为在下载时不显示文件下载框。
修改它以允许相同。
关于c - 让IE浏览器打开文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11162540/