A version of this page is also available for

Windows Embedded CE 6.0 R3


This function removes a window class, freeing the memory required for the class.


BOOL UnregisterClass( 
  LPCTSTR lpClassName, 
  HINSTANCE hInstance


  • lpClassName
    Long pointer to an atom or null-terminated string. If lpClassName is a string, it specifies the window class name. This class name must have been registered by a previous call to the RegisterClass function. System classes, such as dialog box controls, cannot be unregistered.

    If this parameter is an atom, it must be a class atom created by a previous call to the RegisterClass function. The atom must be in the low-order word of lpClassName; the high-order word must be zero.

  • hInstance

Return Value

Nonzero indicates success. Zero indicates that the class could not be found or if a window still exists that was created with the class. To get extended error information, call GetLastError.


Before calling this function, an application must destroy all windows created with the specified class.

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


Header winuser.h
Windows Embedded CE Windows CE 1.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also


Window Class Functions