IShellFolder 接口 (shobjidl_core.h)

由所有 Shell 命名空间文件夹对象公开,其方法用于管理文件夹。

继承

IShellFolder 接口继承自 IUnknown 接口。 IShellFolder 还具有以下类型的成员:

方法

IShellFolder 接口具有这些方法。

 
IShellFolder::BindToObject

检索处理程序,通常是为特定项实现 IShellFolder 的 Shell 文件夹对象。 控制处理程序构造的可选参数在绑定上下文中传递。
IShellFolder::BindToStorage

请求指向对象的存储接口的指针。
IShellFolder::CompareIDs

确定给定两个文件对象或文件夹的项标识符列表的相对顺序。
IShellFolder::CreateViewObject

请求可用于从文件夹对象获取信息或与文件夹对象交互的对象。
IShellFolder::EnumObjects

使客户端能够通过创建项标识符枚举对象并返回其 IEnumIDList 接口来确定文件夹的内容。 然后,该接口支持的方法可用于枚举文件夹的内容。
IShellFolder::GetAttributesOf

获取 IShellFolder 表示的 对象中包含的一个或多个文件或文件夹对象的属性。
IShellFolder::GetDisplayNameOf

检索指定文件对象或子文件夹的显示名称。
IShellFolder::GetUIObjectOf

获取一个对象,该对象可用于对指定的文件对象或文件夹执行操作。
IShellFolder::P arseDisplayName

将文件对象或文件夹的显示名称转换为项标识符列表。
IShellFolder::SetNameOf

设置文件对象或子文件夹的显示名称,从而更改进程中的项标识符。

注解

为扩展 Shell 命名空间的对象实现此接口。 例如,实现此接口以创建需要根 Windows 资源管理器的单独命名空间,或者直接在系统命名空间的层次结构中安装新命名空间。 你最熟悉命名空间的内容,因此你负责实现访问数据所需的一切。

如果需要显示或对 Shell 命名空间的内容执行操作,请使用此接口。 支持 IShellFolder 的对象通常由其他 Shell 文件夹对象创建。 若要检索文件夹的 IShellFolder 接口,通常首先调用 SHGetDesktopFolder。 此函数返回指向桌面的 IShellFolder 接口的指针。 然后,可以使用其方法来检索特定命名空间文件夹的 IShellFolder 接口。

注意IShellFolder 方法仅接受相对于 文件夹的 PIDL。 某些 IShellFolder 方法(例如 IShellFolder::GetAttributesOf)仅接受单级 PIDL。 换句话说,PIDL 必须仅包含一个 SHITEMID 结构,以及终止 NULL。 使用 IEnumIDList 枚举文件夹的内容时,将收到此表单的 PIDL。 其他方法(如 IShellFolder::CompareIDs)接受多级 PIDL。 这些 PIDL 可以有多个 SHITEMID 结构,并标识父文件夹下方的一个或多个级别的对象。 检查引用,确保特定方法可以接受哪些类型的 PIDL。
 

示例

可以在资源管理器数据提供程序示例示例中查看 IShellFolder 的示例实现。 可以在多个示例中找到各种 IShellFolder 方法的使用,包括 文件操作示例

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 shobjidl_core.h