INFO: Considerations for CreateCursor() and CreateIcon() (73667)



The information in this article applies to:

  • Microsoft Windows Software Development Kit (SDK) 3.1
  • Microsoft Win32 Application Programming Interface (API), when used with:
    • Microsoft Windows NT Server 3.5
    • Microsoft Windows NT Server 3.51
    • Microsoft Windows NT Workstation 3.5
    • Microsoft Windows NT Workstation 3.51
    • Microsoft Windows 95

This article was previously published under Q73667

SUMMARY

An application can use the CreateCursor() and CreateIcon() APIs to create icons and cursors on the fly. The application determines the shape at run time.

When the shape of the icons and the cursors is known in advance, an application should use LoadIcon() and LoadCursor().

An application that uses CreateIcon() must call DestroyIcon() to free the memory used by the icon when it is no longer needed. An application that uses CreateCursor() must call DestroyCursor() to release the memory used by the cursor when it is no longer needed.

An application can call DestroyIcon() and DestroyCursor() only when the icon or the cursor is not in use. For example, if the cursor created by CreateCursor() has been specified in a SetCursor call, it must not be destroyed until it has been released by another SetCursor() call.

An application can only use DestroyIcon() and DestroyCursor() to destroy icons and cursors created by CreateIcon() and CreateCursor(). It should not try to destroy icons and cursors loaded with LoadIcon() and LoadCursor().

Modification Type:MinorLast Reviewed:2/11/2005
Keywords:kbinfo KB73667