为已知文件夹中存在的单个文件创建 Shell 项对象。
Syntax
SHSTDAPI SHCreateItemInKnownFolder(
[in] REFKNOWNFOLDERID kfid,
DWORD dwKFFlags,
[in, optional] PCWSTR pszItem,
[in] REFIID riid,
[out] void **ppv
);
参数
[in] kfid
类型: REFKNOWNFOLDERID
对 KNOWNFOLDERID 的引用,该 GUID 标识包含该项的文件夹。
dwKFFlags
类型:DWORD
在对象检索中指定特殊选项的标志。 此值可以为 0;否则为一个或多个 KNOWN_FOLDER_FLAG 值。
[in, optional] pszItem
类型:PCWSTR
指向以 Null 结尾的缓冲区的指针,该缓冲区包含新项的文件名作为 Unicode 字符串。 此参数也可以为 NULL。 在这种情况下,将创建一个表示已知文件夹本身的 IShellItem 。
[in] riid
类型: REFIID
对表示通过 ppv 检索的项的接口的 IID 的引用。 此值通常IID_IShellItem或IID_IShellItem2。
[out] ppv
类型: void**
当此函数成功返回时,包含 riid 中请求的接口指针。 这通常是 IShellItem 或 IShellItem2。
返回值
类型:HRESULT
如果此函数成功,它将返回 S_OK。 否则,它将返回 HRESULT 错误代码。
要求
| Requirement | 价值 |
|---|---|
| 最低支持的客户端 | Windows Vista [仅限桌面应用] |
| 支持的最低服务器 | Windows Server 2008 [仅限桌面应用] |
| 目标平台 | Windows操作系统 |
| Header | shobjidl_core.h (包括 Shobjidl.h) |
| Library | OneCore.Lib |
| DLL | Shell32.dll |
| API 集 | ext-ms-win-shell-shell32-l1-2-0(在 Windows 8.1 中引入) |