I'm trying to load a custom cursor from a resource file (.rc) in Visual C++ (Windows). The resource is being properly compiled into my main .exe because I can successfully load other resource types (ie. custom resource types like "PNG").

In my .rc file I have: 

```
#define IDI_CURSOR1 1000

IDI_CURSOR1 CURSOR "Resources\\Cursors\\MainCursor.cur"

```

In my .cpp file I have:

```
HCURSOR mainCursor = LoadCursor( NULL, MAKEINTRESOURCE( IDI_CURSOR1 ) );

```

But `LoadCursor()` always returns `NULL`. Calling `HRESULT_FROM_WIN32( GetLastError() )` returns "The specified resource type cannot be found in the resource file."

Now, I tried to load it using:

```
FindResource( NULL, MAKEINTRESOURCE( IDI_CURSOR1 ), L"CURSOR" );

```

but I get the same error.

After digging around I found a way to print all resources in my module and I found my cursor. It is being loaded but as type "12" which according to this: <http://www.csn.ul.ie/~caolan/pub/winresdump/winresdump/doc/resfmt.txt> is a `RT_GROUP_CURSOR`. There is also a `RT_CURSOR` on there which is type "1". As a confirmation, I tried to find the resource again using: 

```
 FindResource( NULL, MAKEINTRESOURCE( IDI_CURSOR1 ), "#12" );

```

and did find it with no errors.

Ok, so the cursor is being loaded but `LoadCursor()` doesn't seem to be looking for type "12". What type is it looking for and how do I get `CURSOR` to map to the correct type?