我在我的代码中创建了一个 IExplorerBrowser 实例,以便在我的一个对话框中创建一个自定义 I/O 视图。我已经在我的宿主类中实现了 IServiceProvider 和 ICommDlgBrowser 接口。我使用 IExplorerBrowser::BrowseToIDList 方法来填充视图。
我想过滤显示的文件类型(例如仅 PNG 文件)。如果我用FOLDERID_Pictures(即“我的图片”)调用 BrowseToIDList,我可以使用 ICommDlgBrowser::IncludeObject 方法或 IFolderFilter::ShouldShow 来限制允许显示的文件。但是,如果我浏览到 Windows 7 ( FOLDERID_PicturesLibrary ) 上的图片库,则 ICommDlgBrowser::IncludeObject 和 IFolderFilter::ShouldShow 都不会被调用。
在我不知道的 Win7 库中过滤文件是否有一些限制?也许我错过了一个界面,或者我在某处指定了错误的标志。
任何想法将不胜感激。