Just worked this out:
Userlib:
.lib "user32.dll"
SetSystemCursor%(hcur%, id%)
LoadCursor%(hInstance%, lpCursorName%):"LoadCursorA"
DestroyCursor%(hCursor%)
LoadCursorFromFile%(filename$):"LoadCursorFromFileA"
GetCursor%()
B+ Code:
Graphics 640, 480, 16, 2
Const OCR_NORMAL = 32512 ; Normal
Const IDC_SIZEALL = 32646 ; Size all
oldCur% = GetCursor() ; Save Default Cursor
; Load New Cursor
;hCur% = LoadCursor(0, IDC_SIZEALL) ; Size All System Cursor
hCur% = LoadCursorFromFile("target.cur") ; Custom Cursor
SetSystemCursor hCur%, OCR_NORMAL
DestroyCursor hCur%
Repeat: Until KeyDown(1)
; Restore
hCur% = LoadCursor(0, oldCur%)
SetSystemCursor hCur%, OCR_NORMAL
DestroyCursor hCur%
End
I can't seem to get it to restore the original cursor correctly, though im sure that code should work. Hopefully someone can spot the problem.