Функция SetupDiLoadDeviceIcon (setupapi.h)
Функция SetupDiLoadDeviceIcon извлекает значок для указанного устройства.
Синтаксис
WINSETUPAPI BOOL SetupDiLoadDeviceIcon(
[in] HDEVINFO DeviceInfoSet,
[in] PSP_DEVINFO_DATA DeviceInfoData,
[in] UINT cxIcon,
[in] UINT cyIcon,
[in] DWORD Flags,
[out] HICON *hIcon
);
Параметры
[in] DeviceInfoSet
Дескриптор набора сведений об устройстве , содержащего элемент сведений об устройстве, представляющий устройство, для которого требуется извлечь значок.
[in] DeviceInfoData
Указатель на структуру SP_DEVINFO_DATA , указывающую элемент сведений об устройстве в DeviceInfoSet.
[in] cxIcon
Ширина извлекаемого значка (в пикселях). Используйте системный индекс метрик SM_CXICON, чтобы указать значок по умолчанию, или используйте системный индекс метрик SM_CXSMICON для указания небольшого значка. Системные метрики определяются в Winuser.h, а связанные с ними значения можно получить путем вызова функции GetSystemMetrics . (Функция GetSystemMetrics описана в Microsoft Windows SDK.)
[in] cyIcon
Высота извлекаемого значка (в пикселях). Используйте SM_CXICON, чтобы указать значок по умолчанию, или используйте SM_CXSMICON, чтобы указать небольшой значок.
[in] Flags
Не используется. Значение должно быть равно нулю.
[out] hIcon
Указатель на дескриптор значка, который получает дескриптор значка, извлекаемого этой функцией. После того как приложение, вызывающее эту функцию, будет готово с помощью значка, приложение должно вызвать DestroyIcon , чтобы удалить значок. (DestroyIcon задокументирован в Microsoft Windows SDK.)
Возвращаемое значение
SetupDiLoadDeviceIcon возвращает значение TRUE , если функция успешно получает значок для указанного устройства. В противном случае функция возвращает значение FALSE , а зарегистрированную ошибку можно получить путем вызова Метода GetLastError.
Комментарии
SetupDiLoadDeviceIcon пытается получить значок для устройства следующим образом:
-
Если свойство устройства DEVPKEY_DrvPkg_Icon устройства содержит список строк идентификатора ресурса, функция пытается получить значок, указанный первой строкой идентификатора ресурса в списке.
Тип данных свойства устройства DEVPKEY_DrvPkg_Icon устройства — DEVPROP_TYPE_STRING_LIST.
Формат строки идентификатора ресурса:
[filepath\]filename,-resourceID
Где:
- filepath, за которым следует символ обратной косой черты (\\), является необязательным и указывает путь к файлу, содержашему значок.
- FileName, за которым следует символ запятой (","), указывает имя файла, содержащего значок.
- ResourceID, которому предшествует тире ("-"), указывает идентификатор ресурса значка.
- Если функция не может получить значок конкретного устройства, она попытается получить значок класса для устройства. Дополнительные сведения о значках классов см. в разделе SetupDiLoadClassIcon.
- Если функции не удается получить значок класса для устройства, она попытается получить значок для класса настройки неизвестного устройства, где значок для класса настройки неизвестного устройства содержит изображение вопросительного знака (?).
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows Vista и более поздних версиях Windows. |
Целевая платформа | Персональный компьютер |
Верхняя часть | setupapi.h (включая Setupapi.h) |
Библиотека | Setupapi.lib |
DLL | Setupapi.dll |