SHOpenFolderAndSelectItems 函数 (shlobj_core.h)

打开 Windows 资源管理器窗口,其中选定了特定文件夹中的指定项目。

语法

SHSTDAPI SHOpenFolderAndSelectItems(
  [in]           PCIDLIST_ABSOLUTE     pidlFolder,
                 UINT                  cidl,
  [in, optional] PCUITEMID_CHILD_ARRAY apidl,
                 DWORD                 dwFlags
);

参数

[in] pidlFolder

类型: PCIDLIST_ABSOLUTE

指向指定文件夹的完全限定项 ID 列表的指针。

cidl

类型: UINT

选择数组 apidl 中的项计数。 如果 cidl 为零,则 pidlFolder 必须指向描述要选择的单个项的完全指定的 ITEMIDLIST 。 此函数打开父文件夹并选择该项目。

[in, optional] apidl

类型: PCUITEMID_CHILD_ARRAY

指向 PIDL 结构数组的指针,每个结构都是在 pidlFolder 引用的目标文件夹中选择的项。

dwFlags

类型:DWORD

可选标志。 在 Windows XP 下,忽略此参数。 在 Windows Vista 中,定义了以下标志。

OFASI_EDIT (0x0001)

选择一个项目并将其名称置于编辑模式。 仅当选择单个项时,才能使用此标志。 对于多个项目选择,将忽略它。

OFASI_OPENDESKTOP (0x0002)

选择桌面上的一个或多个项,而不是在 Windows 资源管理器窗口中。 请注意,如果桌面在打开的窗口后面被遮盖,则它将不会可见。

返回值

类型: HRESULT

如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

在使用 SHOpenFolderAndSelectItems 之前,必须调用 CoInitialize 或 CoInitializeEx 否则会导致 SHOpenFolderAndSelectItems 失败。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 shlobj_core.h (包括 Shlobj.h)
Library Shell32.lib
DLL Shell32.dll (版本 6.0 或更高版本)