Создает массив дескрипторов значков, которые извлекаются из указанного файла.
Синтаксис
UINT PrivateExtractIcons( LPCTSTR lpszFile, int nIconIndex, int cxIcon, int cyIcon, HICON *phicon, UINT *piconid, UINT nIcons, UINT flags ); |
Параметры
lpszFile
[in] Указатель на строку с завершающим нулем, устанавливающую путь и имя файла, из которого значок(ки), должен быть извлечен.
nIconIndex
[in] Устанавливает отсчитываемый от нуля индекс первого извлекаемого значка. Например, если это значение - нуль, функция извлекает первый значок в указанном файле.
cxIcon
[in] Горизонтальный требуемый размер значка. См. замечания.
cyIcon
[in] Вертикальный требуемый размер значка. См. замечания.
phicon
[out] Указатель на возвращаемый массив дескрипторов значков.
piconid
[out] Указатель на возвращаемый идентификатор ресурса для значка, который лучше всего подходит текущему устройству отображения. Возвращаемый идентификатор - 0xFFFFFFFF, если идентификатор не доступен для этого формата. Возвращаемый идентификатор - 0, если идентификатор не может по-другому получиться.
nIcons
[in] Устанавливает число значков, которые извлекаются из файла. Этот параметр применяется только при извлечении значков из .exe и .dll файлов.
flags
[in] Устанавливает флажки, которые управляют этой функцией. Эти флажки - флажки LR_*, используемые функцией LoadImage.
Возвращаемое значение
Если параметр phicon - НУЛЬ (NULL) и эта функция завершается успешно, то возвращаемое значение - число значков в файле. Если функция завершается ошибкой, тогда возвращаемое значение - 0.
Если параметр phicon не НУЛЬ (NULL) и функция завершается успешно, то возвращаемое значение - число извлеченных значков. Иначе, возвращаемое значение - 0xFFFFFFFF, если файл не найден.
Замечания
Эта функция извлекает значки из исполняемого файла (.exe), динамически подключаемой библиотеки (.dll), файлов значка (.ico), курсора (.cur), анимированного курсора (.ani) и точечного рисунка (.bmp). Извлечения из исполняемых файлов 16-разрядного Microsoft Windows 3.x (.exe или .dll) также поддерживаются.
Параметры cxIcon и cyIcon устанавливают размер извлекаемых значков. Могут быть извлечены два размера, путем помещения первого размера в МЛАДШЕЕ СЛОВО (LOWORD) параметра, а второго размера в его СТАРШЕЕ СЛОВО (HIWORD). Например, MAKELONG (24, 48) и для параметров cxIcon и cyIcon извлечет и 24- и 48-пиксельный размер значков.
Вы должны разрушать все значки, извлеченные PrivateExtractIcons при помощи вызова функции DestroyIcon.
Несмотря на то, что Вы можете обратиться к этой функции при помощи использования функций LoadLibrary и GetProcAddress, объединенных в версиях Windows от первой до Windows XP, функция была не доступна для использования стандартным inc-файлом и библиотекой компоновки. В Windows XP Service Pack 1 (SP1) и Windows Server 2003 эта функция теперь зарегистрирована и сделана доступной для использования соответствующим inc-файлом и библиотекой компоновки. Однако, эту функцию не рекомендуется применять в назначениях не для основного использования. Это означает, что Вы не должны использовать ее в новых программах, потому что функция может быть изменена или недоступна в последующих версиях Windows.
Смотри также
Обзор Значки, Функции, используемые значками, DestroyIcon, ExtractIcon, ExtractIconEx
Размещение и совместимость PrivateExtractIcons | ||
К | Windows XP | Да |
л | Windows 2000 Professional | Да |
и | Windows NT Workstation | Нет |
е | Windows Me | Нет |
н | Windows 98 | Нет |
т | Windows 95 | Нет |
С | Windows 2003 Server | Да |
е | Windows 2000 Server | Да |
р | Windows NT Server | Нет |
в | ||
е | ||
р | ||
Используемая библиотека | User32.lib | |
Используемая DLL | user32.dll | |
Заголовочный файл | ||
- объявлено в | Winuser.h | |
- включено в | Windows.h | |
Unicode | Реализуется как версии ANSI и Unicode | |
Замечания по платформе | Не имеется |