ExtractAssociatedIconA 函数 (shellapi.h)

获取存储为文件中资源或存储在文件的关联可执行文件中的图标的句柄。

语法

HICON ExtractAssociatedIconA(
  [in]      HINSTANCE hInst,
  [in, out] LPSTR     pszIconPath,
  [in, out] WORD      *piIcon
);

参数

[in] hInst

类型:HINSTANCE

调用应用程序的实例的句柄。

[in, out] pszIconPath

类型:LPTSTR

指向在条目中指定包含图标的文件的完整路径和文件名的字符串的指针。 该函数从该文件或与该文件关联的可执行文件中提取图标句柄。

当此函数返回时,如果从可执行文件(lpIconPath 或关联的可执行文件指向的可执行文件)获取图标句柄,该函数会将该可执行文件的完整路径和文件名存储在此参数指向的缓冲区中。

[in, out] piIcon

类型:LPWORD

指向 WORD 值的指针,该值指定要获取其句柄的图标的索引。

函数返回时,如果从可执行文件(lpIconPath 指向的可执行文件或关联的可执行文件)获取图标句柄,则此值指向该文件中的图标索引。

返回值

类型:HICON

如果函数成功,则返回值为图标句柄。 如果从关联的可执行文件中提取图标,该函数会将可执行文件的完整路径和文件名存储在由 lpIconPath指向的字符串中,并将图标的标识符存储在由 lpiIcon指向的 WORD 中。

如果函数失败,则返回值 NULL

言论

不再需要时,调用方负责通过调用 DestroyIcon 函数释放 ExtractAssociatedIcon 返回的图标句柄。

ExtractAssociatedIcon 函数首先查找由 lpIconPath指定的文件中的索引图标。 如果函数无法从该文件获取图标句柄,并且该文件具有关联的可执行文件,则会在该可执行文件中查找图标。 与可执行文件的关联基于文件扩展名,存储在注册表的每个用户部分。

注意

shellapi.h 标头将 ExtractAssociatedIcon 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows XP [仅限桌面应用]
支持的最低服务器 Windows 2000 Server [仅限桌面应用]
目标平台 窗户
标头 shellapi.h
DLL Shell32.dll
API 集 ext-ms-win-shell-shell32-l1-2-1(在 Windows 10 版本 10.0.10240 中引入)

另请参阅

ExtractAssociatedIconEx

ExtractIcon

ExtractIconEx