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 [仅限桌面应用]
目标平台 Windows
标头 shellapi.h
DLL Shell32.dll
API 集 Windows 10版本 10.0.10240 中引入的 ext-ms-win-shell-shell32-l1-2-1 ()

另请参阅

ExtractAssociatedIconEx

ExtractIcon

ExtractIconEx