Поделиться через


Функция LoadResource (libloaderapi.h)

Извлекает дескриптор, который можно использовать для получения указателя на первый байт указанного ресурса в памяти.

Синтаксис

HGLOBAL LoadResource(
  [in, optional] HMODULE hModule,
  [in]           HRSRC   hResInfo
);

Параметры

[in, optional] hModule

Тип: HMODULE

Дескриптор модуля, исполняемый файл которого содержит ресурс. Если hModule имеет значение NULL, система загружает ресурс из модуля, который использовался для создания текущего процесса.

[in] hResInfo

Тип: HRSRC

Дескриптор загружаемого ресурса. Этот дескриптор возвращается функцией FindResource или FindResourceEx .

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

Тип: HGLOBAL

Если функция выполняется успешно, возвращаемое значение является дескриптором данных, связанных с ресурсом.

Если функция завершается сбоем, возвращается значение NULL. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Тип возвращаемого значения LoadResourceHGLOBAL для обратной совместимости, а не потому, что функция возвращает дескриптор в глобальный блок памяти. Не передавайте этот дескриптор функции GlobalLock или GlobalFree . Чтобы получить указатель на первый байт данных ресурса, вызовите функцию LockResource ; Чтобы получить размер ресурса, вызовите SizeofResource.

GlobalSize возвращает 0 для ресурса HGLOBAL. В результате все API, которые зависят от GlobalSize для определения размера HGLOBAL, будут работать неправильно. Например, используйте SHCreateMemStream вместо CreateStreamOnHGlobal.

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

Функция Действие Удаление ресурса
FormatMessage Загружает и форматирует запись таблицы сообщений Действия не требуются
LoadAccelerators Загружает таблицу ускорителей DestroyAcceleratorTable
LoadBitmap Загружает ресурс растрового изображения DeleteObject
LoadCursor Загружает ресурс курсора DestroyCursor
LoadIcon Загружает ресурс значка DestroyIcon
LoadMenu Загружает ресурс меню DestroyMenu
LoadString Загружает строковый ресурс Действия не требуются
 

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

Примеры

Пример см. в разделе Обновление ресурсов.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header libloaderapi.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

Основные понятия

FindResource

FindResourceEx

LoadLibrary

LoadModule

LockResource

Другие ресурсы

Справочные материалы

Ресурсы