IShellLinkW::GetPath 方法 (shobjidl_core.h)

获取 Shell 链接对象的目标的路径和文件名。

语法

HRESULT GetPath(
  [out]     LPWSTR           pszFile,
  [in]      int              cch,
  [in, out] WIN32_FIND_DATAW *pfd,
  [in]      DWORD            fFlags
);

参数

[out] pszFile

类型: LPTSTR

接收 Shell 链接对象目标的路径和文件名的缓冲区的地址。

[in] cch

类型: int

pszFile 参数指向的缓冲区的大小(以字符为单位),包括终止 null 字符。 可返回的最大路径大小为MAX_PATH。 此参数通常是通过调用 arraySIZE (pszFile) 设置的。 ARRAYSIZE 宏在 Winnt.h 中定义。

[in, out] pfd

类型: WIN32_FIND_DATA*

指向 WIN32_FIND_DATA 结构的指针,该结构接收有关 Shell 链接对象的目标的信息。 如果此参数为 NULL,则不返回任何其他信息。

[in] fFlags

类型:DWORD

指定要检索的路径信息类型的标志。 此参数可以是以下值的组合。

SLGP_SHORTPATH

检索文件名) 标准短 (8.3 格式。

SLGP_UNCPRIORITY

支持;请勿使用。

SLGP_RAWPATH

检索原始路径名称。 原始路径可能不存在,可能包含需要扩展的环境变量。

SLGP_RELATIVEPRIORITY

Windows Vista 及更高版本。 如果可能,检索快捷方式的目标相对于先前调用 IShellLink::SetRelativePath 设置的路径。

返回值

类型: HRESULT

如果操作成功并检索到有效路径,则返回 S_OK 。 如果操作成功但未检索到路径,则返回 S_FALSEpszFile 将为空。 否则,它将返回标准 HRESULT 错误值之一。

要求

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