IShellFolder::GetAttributesOf 方法 (shobjidl_core.h)

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

语法

HRESULT GetAttributesOf(
  [in]      UINT                  cidl,
  [in]      PCUITEMID_CHILD_ARRAY apidl,
  [in, out] SFGAOF                *rgfInOut
);

参数

[in] cidl

类型: UINT

要从中检索属性的项数。

[in] apidl

类型: PCUITEMID_CHILD_ARRAY*

指向 ITEMIDLIST 结构的指针数组的地址,每个结构都唯一标识相对于父文件夹的项。 每个 ITEMIDLIST 结构必须恰好包含一个 SHITEMID 结构,后跟一个终止零。

[in, out] rgfInOut

类型: SFGAOF*

指向单个 ULONG 值的指针,该值在输入时包含调用应用程序请求的按位 SFGAO 属性。 退出时,此值包含所有指定项通用的请求属性。

返回值

类型: HRESULT

如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

若要优化此操作,请勿返回未指定的标志。

对于文件夹对象, SFGAO_BROWSABLE 属性意味着客户端可以绑定到此对象,如此处的常规形式所示。

IShellFolder::BindToObject(..., pidl, IID_IShellFolder, &psfItem);

然后,客户端可以通过此语句在该项上创建 IShellView

psfItem->CreateViewObject(..., IID_IShellView,...);

SFGAO_DROPTARGET 属性意味着客户端可以通过调用 IShellFolder::GetUIObjectOf 绑定到此文件夹的 IDropTarget 实例,如下所示。

IShellFolder::GetUIObjectOf(hwnd, 1, &pidl, IID_IDropTarget, NULL, &pv)

SFGAO_NONENUMERATED 属性指示由 IShellFolder::EnumObjects 方法创建的枚举器不返回的项。

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 shobjidl_core.h (包括 Shobjidl.h)
DLL Shell32.dll (版本 4.0 或更高版本)

另请参阅

IShellFolder

IShellFolder2