This function loads an icon, cursor, or bitmap.
At a Glance
Header file: | Winuser.h |
Windows CE versions: | 1.0 and later |
Syntax
HANDLE LoadImage(HINSTANCE hinst,| LPCTSTR lpszName,
UINT uType, int cxDesired, int cyDesired, UINT fuLoad);
Parameters
hinst
[in] Handle to an instance of the module that contains the image to be loaded. To load an OEM image, set this parameter to zero.
lpszName
[in] Identifies the image to load. If the hinst parameter is non-NULL and the fuLoad parameter does not include LR_LOADFROMFILE, lpszName is a pointer to a null-terminated string that contains the name of the image resource in the hinst module.
If hinst is NULL and LR_LOADFROMFILE is not specified, the low-order word of this parameter must be the identifier of the OEM image to load. The OEM image identifiers are defined in Winuser.h and have the following prefixes:
Prefix | Description |
OBM_ | OEM bitmaps |
OIC_ | OEM icons |
OCR_ | OEM cursors |
If the fuLoad parameter includes the LR_LOADFROMFILE value, lpszName is the name of the file that contains the image.
uType
[in] Specifies the type of image to be loaded. This parameter can be one of the following values:
Value | Description |
IMAGE_BITMAP | Loads a bitmap. |
IMAGE_CURSOR | Loads a cursor. |
IMAGE_ICON | Loads an icon. |
cxDesired
[in] Specifies the width, in pixels, of the icon or cursor. If this parameter is zero, the function uses the SM_CXICON or SM_CXCURSOR system metric value to set the width. If uType is IMAGE_BITMAP, this parameter must be zero.
cyDesired
[in] Specifies the height, in pixels, of the icon or cursor. If this parameter is zero, the function uses the SM_CYICON or SM_CYCURSOR system metric value to set the height. If uType is IMAGE_BITMAP, this parameter must be zero.
fuLoad
[in] Set to zero.
Windows CE behaves as though the LR_DEFAULTCOLOR and LR_DEFAULTSIZE values are set. LR_DEFAULTCOLOR means “not monochrome..” LR_DEFAULTSIZE means that the system uses the width or height specified by the system metric values for cursors or icons if the cxDesired or cyDesired values are set to zero. If the resource contains multiple images, the function uses the size of the first image.
Return Values
The handle of the newly loaded image indicates success. NULL indicates failure. To get extended error information, call GetLastError.
Remarks
When you are finished using a bitmap, cursor, or icon you loaded, you can release its associated memory by calling one of the functions in the following table.
Resource | Release function |
Bitmap | DeleteObject |
Cursor | DestroyCursor |
Icon | DestroyIcon |
The system automatically deletes these resources when the process that created them terminates, however, calling the appropriate function saves memory and decreases the size of the process's working set.
If you are targeting a platform that does not support mouse cursors, you cannot specify the SM_CXCURSOR and SM_CYCURSOR values in the cxDesired and cyDesired parameters, and you cannot specify IMAGE_CURSOR for the uType parameter.
See Also