Windows Mobile 6.5
A version of this page is also available for

This function registers a window class for subsequent use in calls to the CreateWindow or CreateWindowEx function.

ATOM RegisterClass(
  const WNDCLASS* lpWndClass


Long pointer to a WNDCLASS structure. You must fill the structure with the appropriate class attributes before passing it to the function.

An atom that uniquely identifies the class being registered indicates success. Zero indicates failure. To get extended error information, call GetLastError.

If you register the window class by using RegisterClassA, the application tells the system that the windows of the created class expect messages with text or character parameters to use the ANSI character set; if you register it by using RegisterClassW, the application requests that the system pass text parameters of messages as Unicode.

All window classes that an application registers are unregistered when it terminates.

The WNDCLASS structure pointed to by the lpWndClass parameter does not support the lpszMenuName member because Windows Embedded CE does not support default menus.

Unless you are using the Windows Embedded CE Iconcurs component, which provides mouse cursor support on appropriate target platforms, you cannot use the hCursor member in the WNDCLASS structure pointed to by lpWndClass.

Windows Embedded CEWindows CE 1.0 and later
Windows MobileWindows Mobile Version 5.0 and later

Community Additions