StrRetToStrN 函数

采用 IShellFolder::GetDisplayNameOf 返回的 STRRET 结构,将其转换为字符串,并将结果置于缓冲区中。

语法

BOOL StrRetToStrN(
  _Out_   LPTSTR        pszOut,
  _In_    UINT          cchOut,
  _Inout_ LPSTRRET      pStrRet,
  _In_    LPCITEMIDLIST pidl
);

参数

pszOut [out]

类型: LPTSTR

用于保存显示名称的缓冲区。 它将作为以 null 结尾的字符串返回。 如果 cchOut 太小,名称将被截断以适应。

cchOut [in]

类型: UINT

pszOut 的大小(以字符为单位)。 如果 cchOut 太小,字符串将被截断以适应。

pStrRet [in, out]

类型: LPSTRRET

指向 STRRET 结构的指针。 函数返回时,此指针将不再有效。

pidl [in]

类型: LPCITEMIDLIST

指向项的 ITEMIDLIST 结构的指针。

返回值

类型: BOOL

TRUE 表示成功, FALSE 表示失败。

备注

注意

从Shell32.dll版本 5.0 开始,调用此函数等效于调用 StrRetToBuf

 

StrRetToStrN 不按名称导出。 若要使用它,必须使用 GetProcAddress 并从 Shell32.dll 请求序号 96 来获取函数指针。

如果 pStrRet 指向的结构的 uType 成员设置为 STRRET_WSTR,则返回时将释放该结构的 pOleStr 成员。

请注意,此函数是从 Shell32.dll 导出的,而不是从Shlwapi.dll导出的。 它还包含在 Shlobj.h 中,而不是 Shlwapi.h 中。

要求

要求
最低受支持的客户端
Windows 2000 专业版、Windows XP [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
DLL
Shell32.dll (版本 4.71 或更高版本)

另请参阅

StrRetToStr

StrRetToBuf