Функция 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_INTRESOURCE, LoadAccelerators, LoadBitmap, LoadCursor, LoadIcon, LoadMenu, LoadResource, LoadString, LockResource, SizeofResource
Размещение и совместимость 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 |
Нет |
Замечания по платформе |
Не имеется |