SHGetPathFromIDListEx 函数 (shlobj_core.h)
将项标识符列表转换为文件系统路径。 此函数通过允许设置字符串缓冲区的初始大小并声明以下选项来扩展 SHGetPathFromIDList 。
语法
BOOL SHGetPathFromIDListEx(
[in] PCIDLIST_ABSOLUTE pidl,
[out] PWSTR pszPath,
DWORD cchPath,
GPFIDL_FLAGS uOpts
);
参数
[in] pidl
类型: PCIDLIST_ABSOLUTE
指向项标识符列表的指针,该列表指定相对于桌面) (命名空间根目录的文件或目录位置。
[out] pszPath
类型: PWSTR
调用此函数时,会传递一个以 null 结尾的 Unicode 缓冲区来接收文件系统路径。 此缓冲区的大小为 cchPath。
当此函数返回时,包含以 null 结尾的 Unicode 缓冲区的地址,该缓冲区包含文件系统路径。 此缓冲区的大小为 cchPath。
cchPath
类型:DWORD
pszPath 指向的缓冲区的大小(以字符为单位)。
uOpts
类型: GPFIDL_FLAGS
这些标志确定返回的路径的类型。
GPFIDL_DEFAULT (0x0000)
包含 Win32 文件名、服务器和根驱动器。
GPFIDL_ALTNAME (0x0001)
使用短文件名。
GPFIDL_UNCPRINTER (0x0002)
包括 UNC 打印机名称项。
返回值
类型: BOOL
如果成功,则返回 TRUE ;否则为 FALSE。
注解
除 UNC 打印机名称外,如果 pidl 参数指定的位置不是文件系统的一部分,则此函数将失败。
如果 pidl 参数指定快捷方式, 则 pszPath 包含快捷方式的路径,而不是快捷方式的目标路径。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | shlobj_core.h (包括 Shlobj.h) |
Library | Shell32.lib |
DLL | Shell32.dll |
API 集 | Windows 10版本 10.0.14393 中引入的 ext-ms-win-shell-shell32-l1- (2-2) |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈