### 函数功能

该函数注册在随后调用CreateWindow函数和CreateWindowEx函数中使用的窗口类。 RegisterClass函数己经由函数RegisterClassEx函数来代替，但是，如果不需要设置类的小目标则仍然可以使用RegisterClass函数。

### 函数原型

ATON RegisterClass（CONST WNDCLASS ★lpWndClass）；

### 参数

lpWndClass：指向一个WNDCLASS结构的指针。在将它传递给函数之前，必须在该结构中填充适当的类属性。

### 返回值

如果函数成功，返回值是唯一标识已注册的类的一个原子；如果函数失败，返回值为0。若想获得更多错误信息，请调用GetLastError函数。
备注：如果使用RegisterClassA来注册窗口，应用程序通知系统被注册类的窗口的消息使用ANSI字符集的文本和字符参数；如果使用RegisterClassW来注册窗口，应用程序需要系统以Unicode来传递消息的文本参数。lsWindowUnicode函数使应用程序可以查询每一个窗口的字符特征。参看Win32API中的ANSI和Unicode
函数，请查阅Functiont prototype。
应用程序注册的所有的窗口类在应用程序中止后都为未注册的类。
Windows 95：所有由DLL注册的类在DLL卸载后均未注册的类。
Windows NT：所有由DLL注册的类在DLL卸载后仍为已注册的类。
Windows 95：如果WNDCLASSEX结构中的cbWndExtra或cbClsExtra单元包含字节数超过40个字节，则RegisterClassEx将失败。
Windows CE：由lpWndClass参数指向的WNDCLAS结构不支持lpszMenuName域，因为WindowsCE不支持缺省菜单。
除非使用了WindowsCE的lconcurs组件（这个组件提供了在适当目标平台上的鼠标支持），否则不能使用由lpWndClass指向的WNDCLASS结构中的hCursor域。

### 速查

Windows NT：3.1以上版本；Windows：95以上版本：WindowsCE：1.0以上版本；头文件：Winuser.h;库文件：user32.lib；Unicode：在Windows NT上实现为Unicodee和ANSI两种版本。