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


Функция 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 Загружает и форматирует запись таблицы сообщений Никаких действий не требуется
LoadAccelerator Загружает таблицу акселератора DestroyAcceleratorTable
LoadBitmap Загружает ресурс растрового изображения DeleteObject
LoadCursor Загрузка ресурса курсора DestroyCursor
LoadIcon Загрузка ресурса значка DestroyIcon
LoadMenu Загрузка ресурса меню DestroyMenu
LoadString Загружает строковый ресурс Никаких действий не требуется

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

Примеры

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

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
Заголовок libloaderapi.h (включая Windows.h)
Библиотека Файл Kernel32.lib
Библиотека dll Kernel32.dll

См. также

FindResource

FindResourceEx

LoadLibrary

LoadModule

LockResource