다음을 통해 공유


LoadResource 함수(libloaderapi.h)

메모리에서 지정된 리소스의 첫 번째 바이트에 대한 포인터를 가져오는 데 사용할 수 있는 핸들을 검색합니다.

구문

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

매개 변수

[in, optional] hModule

형식: HMODULE

실행 파일에 리소스가 포함된 모듈에 대한 핸들입니다. hModuleNULL인 경우 시스템은 현재 프로세스를 만드는 데 사용된 모듈에서 리소스를 로드합니다.

[in] hResInfo

형식: HRSRC

로드할 리소스에 대한 핸들입니다. 이 핸들은 FindResource 또는 FindResourceEx 함수에서 반환됩니다.

반환 값

형식: HGLOBAL

함수가 성공하면 반환 값은 리소스와 연결된 데이터에 대한 핸들입니다.

함수가 실패하면 반환 값은 NULL입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

LoadResource의 반환 형식은 함수가 전역 메모리 블록에 대한 핸들을 반환하기 때문이 아니라 이전 버전과의 호환성을 위해 HGLOBAL입니다. 이 핸들을 GlobalLock 또는 GlobalFree 함수에 전달하지 마세요. 리소스 데이터의 첫 번째 바이트에 대한 포인터를 가져오려면 LockResource 함수를 호출합니다. 리소스 크기를 가져오려면 SizeofResource를 호출합니다.

GlobalSize는 리소스 HGLOBAL에 대해 0을 반환합니다. 따라서 HGLOBAL의 크기를 결정하기 위해 GlobalSize에 의존하는 모든 API가 제대로 작동하지 않습니다. 예를 들어 CreateStreamOnHGlobal 대신 SHCreateMemStream을 사용합니다.

리소스를 즉시 사용하려면 애플리케이션에서 다음 리소스별 함수를 사용하여 한 번의 호출로 리소스를 찾아 로드해야 합니다.

함수 작업 리소스를 제거하려면
FormatMessage 메시지 테이블 항목 로드 및 서식 지정 추가 작업이 필요하지 않음
LoadAccelerators 가속기 테이블 로드 DestroyAcceleratorTable
LoadBitmap 비트맵 리소스 로드 DeleteObject
LoadCursor 커서 리소스 로드 DestroyCursor
LoadIcon 아이콘 리소스 로드 DestroyIcon
LoadMenu 메뉴 리소스 로드 DestroyMenu
LoadString 문자열 리소스 로드 추가 작업이 필요하지 않음
 

예를 들어 애플리케이션은 LoadIcon 함수를 사용하여 화면에 표시할 아이콘을 로드한 다음, 완료되면 DestroyIcon 을 로드할 수 있습니다.

예제

예제는 리소스 업데이트를 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 libloaderapi.h(Windows.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

추가 정보

개념

FindResource

FindResourceEx

LoadLibrary

LoadModule

LockResource

기타 리소스

참조

리소스