SHUpdateImageW 函数 (shlobj_core.h)
通知 Shell 系统映像列表中的映像已更改。
语法
void SHUpdateImageW(
[in] LPCWSTR pszHashItem,
[in] int iIndex,
[in] UINT uFlags,
[in] int iImageIndex
);
参数
[in] pszHashItem
类型: LPCTSTR
指向字符串值的指针,该值指定包含图标的文件的完全限定路径。 使用 IExtractIcon::GetIconLocation 的 szIconFile 参数指向的缓冲区中返回的路径。
[in] iIndex
类型: int
一个整数,指定 pszHashItem 指定的文件中图标的从零开始的索引。 使用 IExtractIcon::GetIconLocation 的 piIndex 参数指向的值。
[in] uFlags
类型: UINT
一个无符号整数,指定确定图标属性的标志。 将 uFlags 设置为 IExtractIcon::GetIconLocation 的 pwFlags 参数指向的值。 与 SHUpdateImage 相关的标志 GIL_NOTFILENAME 和 GIL_SIMULATEDOC。
[in] iImageIndex
类型: int
一个整数,指定正在更新的图标的系统映像列表中的索引。
返回值
无
备注
如果不知道要更新的图标的系统映像列表中的索引,请使用 SHGetFileInfo 并将 uFlags 参数设置为 SHGFI_SYSICONINDEX。
必须将 IExtractIcon::GetIconLocation 与需要更新的旧图标的参数一起使用,而不是要将其替换为的新图标的参数。
注意
shlobj_core.h 标头将 SHUpdateImage 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
最低受支持的客户端 | Windows 2000 专业版、Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | shlobj_core.h (包括 Shlobj.h、Shlobj_core.h) |
Library | Shell32.lib |
DLL | Shell32.dll (4.7 或更高版本) |