Функция FindResource 


Функция FindResource выясняет место ресурса с заданным типом и именем в указанном модуле. 

Чтобы задать язык, используйте функцию FindResourceEx.

Синтаксис

HRSRC FindResource(
    HMODULE hModule,
    LPCTSTR lpName,
    LPCTSTR lpType
);

Параметры

hModule

[in] Дескриптор модуля, исполняемый файл которого содержит ресурс. Значение ПУСТО (NULL) задает дескриптор модуля, связанный с загрузочным модулем, который операционная система использовала, чтобы создать текущий процесс.

lpName

[in] Задает имя ресурса. Для получения дополнительной информации, см. раздел Замечаний.

lpType

[in] Определяет тип ресурса. Для получения дополнительной информации, см. раздел Замечаний. Типы стандартных ресурсов смотрите в статье Типы ресурсов.

Возвращаемое значение

Если функция завершается успешно, возвращаемое значение - дескриптор информационного блока заданного ресурса. Чтобы применить дескриптор ресурса, передайте его в функцию LoadResource.

Если функция завершается ошибкой, возвращаемое значение - ПУСТО (NULL). Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError.

Замечания

Если IS_INTRESOURCE (x) - ИСТИНА (TRUE), где х = lpName или lpType, то x устанавливает целочисленный идентификатор имени или типа данного ресурса. В противном случае, этот параметр  - дальний указатель на символьную строку с нулем в конце. Если первый символ  строки - знак решетки (#), остальные знаки обозначают десятичное число, которое устанавливает целочисленный идентификатор имени или типа ресурса. Например, символьная строка "#258" обозначает идентификатор 258.

Чтобы уменьшить объем памяти, требуемый для ресурса, приложение вместо  имени должно обращаться к этому целочисленному идентификатору.

Приложение может использовать функцию FindResource, чтобы найти любой тип ресурса, но эта функция должна использоваться, только в том случае, если прикладная программа должна получить доступ к двоичным данным ресурса при производстве последующих вызовов  функции LockResource.

Чтобы ресурс использовать непосредственно, приложение должно использовать одну из ниже перечисленных определяющих ресурс функций, которые находят и загружают ресурсы при первом вызове.

 

Функция Действие
FormatMessage Загружает и форматирует запись таблицы сообщений.
LoadAccelerators Загружает таблицу клавиш-ускорителей.
LoadBitmap Загружает ресурс точечного рисунка.
LoadCursor Загружает ресурс курсора.
LoadIcon Загружает ресурс значка.
LoadMenu Загружает ресурс меню.
LoadString Загружает запись таблицы строк.

Например, приложение может использовать функцию LoadIcon, чтобы загрузить значок для вывода на экран. Однако, программа должна использовать функции FindResource и LoadResource, если она загружает значок, чтобы копировать его данные в другое приложение.

Строковые ресурсы сохраняются группами по 16 строк в группе. Символьные строки в каждой группе сохраняются как последовательность подсчитанных (без символа конца строки ('0')) строк Unicode. Функция LoadString извлечет строковый ресурс из его соответствующей группы.

Пример

Пример см. в статье Корректировка ресурсов.

Смотри также 

Обзор Ресурсы, Функции, используемые ресурсами, FindResourceEx,  FormatMessage,  IS_INTRESOURCELoadAcceleratorsLoadBitmapLoadCursorLoadIcon LoadMenuLoadResource,  LoadString,  LockResourceSizeofResource

Размещение и совместимость FindResource

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Да версии 3.1 и выше

Windows Me

Да

Windows 98

Да

Windows 95

Да

Используемая библиотека

Kernel32.lib

Заголовочный файл

 

- объявлено в

Winbase.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz