AfxRegisterClass
使用这个函数去注册使用MFC的DLL中的windows类
BOOL AFXAPI AfxRegisterClass(
WNDCLASS* lpWndClass
);
参数
- lpWndClass
指向 WNDCLASS 结构包含关于窗口类的注册信息。 有关该结构的更多信息,请参见 Windows SDK。
返回值
TRUE,如果类注册成功;否则为 FALSE。
备注
如果使用此功能,当卸载 DLL 时类自动为未注册的。
在非 DLL 版本,AfxRegisterClass 标识符定义为映射到 Windows 函数 RegisterClass的宏,因为在应用程序注册的类自动为未注册的。 如果可以使用 AfxRegisterClass 代替 RegisterClass,则您的代码可以使用而无需在应用程序和 DLL 中更改。
示例
// Register your unique class name that you wish to use
WNDCLASS wndcls;
memset(&wndcls, 0, sizeof(WNDCLASS)); // start with NULL defaults
wndcls.style = CS_DBLCLKS | CS_HREDRAW | CS_VREDRAW;
//you can specify your own window procedure
wndcls.lpfnWndProc = ::DefWindowProc;
wndcls.hInstance = AfxGetInstanceHandle();
wndcls.hIcon = LoadIcon(wndcls.hInstance, MAKEINTRESOURCE(IDI_MYICON));
wndcls.hCursor = LoadCursor(wndcls.hInstance, MAKEINTRESOURCE(IDC_ARROW));
wndcls.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
wndcls.lpszMenuName = NULL;
// Specify your own class name for using FindWindow later
wndcls.lpszClassName = _T("MyNewClass");
// Register the new class and trace if it fails
if(!AfxRegisterClass(&wndcls))
{
TRACE("Class Registration Failed\n");
}
要求
标头: afxwin.h