1、 系统注销
系统中注销控件类的代码在src/gui/ctrlclass.c文件中
可以看出,它将ccitable[]中注册的所有控件类所占的内存资源都都释放掉了。这里没什么好说的。
2、 注销自定义控件类
如果要注销自定义的控件类可通过UnregisterWindowClass函数实现,该函数定义在src/gui/window.c
它向桌面线程发送了MSG_UNREGISTERWNDCLASS消息,该消息的处理在src/kernel/desktop-comm.c中
最终通过函数DeleteControlClass实现,该函数定义在src/gui/ctrlclass.c中
它遍历hash表ccitable [],找到要注销的控件类,然后将它从该数组中删除即可。