因为我想通过WebBrowser批量下载一些服务器端根据提交表单而动态生成的报表(格式为.xls)。
希望大家给个最短的有效的关键代码例子。
语言限制:VB6(因为要在Excel 2003的VBA中使用)
不要告诉我使用vbMHWB,因为它需要处理的情况太多,而原程序中已经有大量代码,在WebBrowser下写的。
olelib.tlb我已经下载了一份,可是不会用,通过引用加入.tlb后,Dim A As olelib.这样的方式,也看不到里面有IDownloadManager。关键就在于如何实现这个接口,不会啊。
希望大家给个最短的有效的关键代码例子。
语言限制:VB6(因为要在Excel 2003的VBA中使用)
不要告诉我使用vbMHWB,因为它需要处理的情况太多,而原程序中已经有大量代码,在WebBrowser下写的。
olelib.tlb我已经下载了一份,可是不会用,通过引用加入.tlb后,Dim A As olelib.这样的方式,也看不到里面有IDownloadManager。关键就在于如何实现这个接口,不会啊。
解决方案 »
- 为什么用在传统的listview就不行??????????????
- 求教专业高手!
- VB调用DLL的问题
- vb调用vc写的控件时出现错误
- 上google用这个
- 网址:http://www.film888.com/film.asp?id=pengnick绝对的高速电影网站《星光影视网》(赶快注册)
- 关于VB引用的一个问题?up有分
- 会者最简单的问题!!送分了!!!!200分在线等待!!!-----因为对我最有用!!
- 装了sp5,可为什末access2000还是连不上? 100分给上
- 研究winsock的人进,用winsock模拟拿取网页数据
- vb跨access库查询
- vb 入门级,请高人指点!! 读取一个数据,启动一个按钮,如何实现啊
不过,直接这样写上是不会有效果的,还得Implements olelib2.IServiceProvider
然后在IServiceProvider_QueryService中根据guidService和riid来判断,当查询IDownloadManager的时候做出相应的处理。做到这里即可响应IDownloadManager_Download在IDownloadManager_Download中,真正返回s_ok即可取消下载。
看结构:
Private Sub IDownloadManager_Download(ByVal pmk As olelib.IMoniker, ByVal pbc As olelib.IBindCtx, ByVal dwBindVerb As Long, ByVal grfBINDF As Long, pbindinfo As olelib.BINDINFO, ByVal pszHeaders As Long, ByVal pszRedir As Long, ByVal uiCP As Long)End Sub用pmk.GetDisplayName(pbc, Nothing)即可得到下载URL的地址取消下载后,根据URL再选择合适的方法下载。简单说来就是这样。
Processing .\olelib.odl
Processing C:\Program Files\Microsoft Visual Studio\VC98\include\oaidl.idl
Processing C:\Program Files\Microsoft Visual Studio\VC98\include\objidl.idl
Processing C:\Program Files\Microsoft Visual Studio\VC98\include\unknwn.idl
Processing C:\Program Files\Microsoft Visual Studio\VC98\include\wtypes.idl
.\downloadmgr.inc(13) : error MIDL2025 : syntax error : expecting a type specification near "BINDINFO"
.\downloadmgr.inc(13) : error MIDL2026 : cannot recover from earlier syntax errors; aborting compilation 不知道BINDINFO这样的定义在.odl中怎么样写?