跪求lpszClassName不解
#include<windows.h>
//声明窗口函数原型
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
//--------------------------------------------------------------------------
//主函数
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nShowCmd)
{
HWND hwnd;
MSG msg;
char lpszClassName[]="窗口";
WNDCLASS wc;
wc.cbClsExtra=0;
wc.cbWndExtra=0;
wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wc.hCursor=LoadCursor(NULL,IDC_ARROW);
wc.hIcon=LoadIcon(NULL,IDI_APPLICATION);
wc.hInstance=hInstance;
wc.lpfnWndProc =WndProc;
wc.lpszClassName=lpszClassName;
wc.lpszMenuName=NULL;
wc.style=0;
RegisterClass(&wc);
WNDCLASS wcc;
wcc.cbClsExtra=0;
wcc.cbWndExtra=0;
wcc.hbrBackground = (HBRUSH)GetStockObject(GRAY_BRUSH);
wcc.hCursor=LoadCursor(NULL,IDC_ARROW);
wcc.hIcon=LoadIcon(NULL,IDI_APPLICATION);
wcc.hInstance=hInstance;
wcc.lpfnWndProc =WndProc;
wcc.lpszClassName=lpszClassName;
wcc.lpszMenuName=NULL;
wcc.style=0;
RegisterClass(&wcc);
hwnd=CreateWindow(lpszClassName,
"Window",
WS_OVERLAPPEDWINDOW,
120,50,800,600,
NULL,
NULL,
hInstance,
NULL);
ShowWindow(hwnd,nShowCmd);
UpdateWindow(hwnd);
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
//处理信息的窗口函数
LRESULT CALLBACK WndProc(HWND hwnd,UINT message, WPARAM wParam, LPARAM lParam)
{
......//此处代码略
}
请问:
已知,lpszClassName用于窗口注册的标示,即,窗口通过此来找到创建时所属的窗口类型。但是,假如定义了两个WNDCLASS 结构体类型(wc和wcc),
且二者的成员lpszClassName都为数组lpszClassName的值,即“窗口”,然而wc和wcc的内容并非完全一样,在CreateWindow()函数中,第一个参数都为数组lpszClassName的值,
即新建的窗口通过lpszClassName来找他的窗口类型,而此处两个不同的窗口类型却用了相同的标识,请问窗口时怎样识别的,是按wc呢还是wcc呢???