SHUpdateImageW 函数 (shlobj_core.h)

通知 Shell 系统映像列表中的映像已更改。

语法

void SHUpdateImageW(
  [in] LPCWSTR pszHashItem,
  [in] int     iIndex,
  [in] UINT    uFlags,
  [in] int     iImageIndex
);

参数

[in] pszHashItem

类型: LPCTSTR

指向字符串值的指针,该值指定包含图标的文件的完全限定路径。 使用 IExtractIcon::GetIconLocationszIconFile 参数指向的缓冲区中返回的路径。

[in] iIndex

类型: int

一个整数,指定 pszHashItem 指定的文件中图标的从零开始的索引。 使用 IExtractIcon::GetIconLocationpiIndex 参数指向的值。

[in] uFlags

类型: UINT

一个无符号整数,指定确定图标属性的标志。 将 uFlags 设置为 IExtractIcon::GetIconLocationpwFlags 参数指向的值。 与 SHUpdateImage 相关的标志 GIL_NOTFILENAMEGIL_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 或更高版本)

另请参阅

SHChangeNotify