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 或更高版本) |