setupDiLoadClassIcon 函数 (setupapi.h)

SetupDiLoadClassIcon 函数同时加载指定类的大图标和微型图标。

语法

WINSETUPAPI BOOL SetupDiLoadClassIcon(
  [in]            const GUID *ClassGuid,
  [out, optional] HICON      *LargeIcon,
  [out, optional] PINT       MiniIconIndex
);

参数

[in] ClassGuid

指向类的 GUID 的指针,应为其加载图标 () 。

[out, optional] LargeIcon

指向图标句柄的指针,该句柄接收指定类的已加载大图标的句柄值。 此指针是可选的,可以为 NULL。 如果指针为 NULL,则不会加载大图标。

[out, optional] MiniIconIndex

指向 INT 类型变量的指针,该变量接收指定类的微型图标的索引。 微型图标存储在设备安装程序的微型图标缓存中。 指针是可选的,可以为 NULL

返回值

如果成功,函数将返回 TRUE 。 否则,它将返回 FALSE ,并且可以通过调用 GetLastError 来检索记录的错误。

注解

类的图标要么预定义,要么从设备安装程序的内部缓存中加载,要么直接从类安装程序的可执行文件加载。 此函数查询指定类的 节中的注册表值 ICON 。 如果指定了 ICON 值,则指示要加载的微型图标。

如果 ICON 值为负值,则绝对值表示类注册表中的预定义图标。 有关预定义的微型图标的列表,请参阅 SetupDiDrawMiniIcon

如果 ICON 值为正,则表示将提取的类安装程序可执行映像中的图标。 保留值 1。 此函数还使用 INSTALLER32 注册表值,然后使用 ENUMPROPPAGES32 注册表值来确定要从中提取图标的可执行映像。 有关这些注册表值的详细信息,请参阅 INF ClassInstall32 部分

当调用方使用完图标后,调用方必须调用 DestroyIcon (如Microsoft Windows SDK文档) 中所述。

如果指定 了 LargeIcon 参数,但 ClassGuid 参数未提供有效的类 GUID 或类的 Icon 注册表值无效, 则 SetupDiLoadClassIcon 将加载默认的大图标,返回大图标的句柄,如果指定 了 MiniIconIndex 参数,则返回默认微型图标的索引。

要求

   
最低受支持的客户端 在 Microsoft Windows 2000 及更高版本的 Windows 中可用。
目标平台 桌面
标头 setupapi.h (包括 Setupapi.h)
Library Setupapi.lib
DLL Setupapi.dll

另请参阅

SetupDiDrawMiniIcon

SetupDiGetClassBitmapIndex