现在的位置: 首页 > 综合 > 正文

如何访问IE历史记录(续)

2013年08月16日 ⁄ 综合 ⁄ 共 502字 ⁄ 字号 评论关闭

上一次提到IShellFolder接口的BindToObject失败的问题,主要原因在于SHGetDesktopFolder函数的声明。

Private Declare Function SHGetDesktopFolder Lib "shell32.dll" (ppshf As IShellFolder) As Long

这样写的话就不会有问题了。

 

解决了这个问题,即可按照原来的思路来解决问题,同时由于操作系统的shelll32.dll版本的差异,直接引用会造成一些兼容性问题,这样用接口来实现也许算是最专业的做法吧。

 

获得历史记录文件夹对应的IShellFolder之后,即可用EnumObjects枚举其他的每个成员,参数SHCONTF_FOLDERS表示要枚举的是“文件夹”,SHCONTF_NONFOLDERS表示“文件”。

 

用IShellFolder的GetDisplayNameOf即可获得每个对象的名称,这样就可以将这些项目枚举出来,插入到树形列表中,即可作出类似IE的历史记录效果了。

 

不过,同样的遗留问题是,怎么得到各个对象的URL?就是从属性对话框中可以看到的URL。

 

希望有兴趣的朋友一起研究研究。

 

抱歉!评论已关闭.