Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This function loads a cursor resource.

Syntax

HCURSOR LoadCursor( 
  HINSTANCE 
hInstance, 
  LPCTSTR 
lpCursorName
);

Parameters

hInstance

[in] Handle to an instance of the module whose executable file contains the cursor to be loaded.

lpCursorName

[in] Long pointer to a null-terminated string that contains the name of the cursor resource to be loaded. Alternatively, this parameter can consist of the resource identifier in the low-order word and zero in the high-order word. The MAKEINTRESOURCEmacro can also be used to create this value.

To use one of the Microsoft Win32 predefined cursors, the application must set the hInstanceparameter to NULL and the lpCursorNameparameter to a specific value. The following table shows the possible values. This parameter must be set to one of these values.

Value Description

IDC_APPSTARTING

Standard arrow and small hourglass.

IDC_ARROW

Standard arrow.

IDC_CROSS

Crosshair.

IDC_HAND

Hand.

IDC_HELP

Arrow and question mark.

IDC_ICON

Obsolete.

IDC_NO

Slashed circle.

IDC_SIZE

Obsolete; use IDC_SIZEALL.

IDC_SIZEALL

Four-pointed arrow pointing north, south, east, and west.

IDC_SIZENESW

Double-pointed arrow pointing northeast and southwest.

IDC_SIZENS

Double-pointed arrow pointing north and south.

IDC_SIZENWSE

Double-pointed arrow pointing northwest and southeast.

IDC_SIZEWE

Double-pointed arrow pointing west and east.

IDC_UPARROW

Vertical arrow.

IDC_WAIT

Hourglass.

Return Value

The handle to the newly loaded cursor indicates success. NULL indicates failure. To get extended error information, call GetLastError.

Remarks

This function loads the cursor resource only if it has not been loaded; otherwise, it retrieves the handle to the existing resource. This function returns a valid cursor handle only if the lpCursorNameparameter points to a cursor resource. If lpCursorNamepoints to any type of resource other than a cursor (such as an icon), the return value is not NULL, even though it is not a valid cursor handle.

This function searches the cursor resource most appropriate for the cursor for the current display device. The cursor resource can be a color or monochrome bitmap.

Use the cursor component when targeting a platform that does not support mouse cursors. The only cursor this component supports is the wait cursor (IDC_WAIT). Use the LoadCursorfunction in conjunction with the SetCursorfunction to set the wait cursor.

Copy Code
SetCursor(LoadCursor(NULL, IDC_WAIT));

Use the mcursor component when targeting a platform that does support mouse cursors. This component supports the LoadCursorfunction the same way Windows desktop platforms do, except that it only supports monochrome cursors. Windows Mobile does not support color cursors. An attempt to load a color cursor will have unpredictable results.

Requirements

Header winuser.h
Library Cursor.lib, Mcursor.lib
Windows Embedded CE Windows CE 1.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also