IColumnProvider::GetItemData 方法 (shlobj.h)

请求指定文件的列数据。

语法

HRESULT GetItemData(
  [in]  LPCSHCOLUMNID   pscid,
  [in]  LPCSHCOLUMNDATA pscd,
  [out] VARIANT         *pvarData
);

参数

[in] pscid

类型: LPCSHCOLUMNID

标识列的 SHCOLUMNID 结构。

[in] pscd

类型: LPCSHCOLUMNDATA

指定文件的 SHCOLUMNDATA 结构。

[out] pvarData

类型: VARIANT*

指向 VARIANT 的指针,其中包含 pscd 指定的文件的数据,该文件属于 pscid 指定的列。 如果文件是列提供程序支持的类的成员,请设置此值。

返回值

类型: HRESULT

如果返回文件数据,则返回S_OK;如果列提供程序不支持该文件且未返回任何数据,则返回S_FALSE;否则返回 COM 错误值。

注解

调用此方法是为了检索要显示在指定列中的文件的数据。 它应该是线程安全的。

对于 Windows 资源管理器显示的每个文件,都会调用此方法,尽管其中许多文件不受特定列提供程序的支持。 为了提高性能,首先检查 pscd 指向的结构的 pwszExt 成员,以查看其是否具有列提供程序支持的文件扩展名。 如果没有,请立即返回S_FALSE,以避免不必要的处理。

要求

要求
最低受支持的客户端 Windows 2000 专业版、Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 shlobj.h
DLL Shell32.dll (5.0 或更高版本)