int RegisterWndClass( HINSTANCE hInstance )
{
WNDCLASSEX wndClsEx;
HICON hIcon = LoadIcon(NULL, MAKEINTRESOURCE(IDI_APPLICATION));
//HICON h=LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICONMAINWND));
HCURSOR hCursor = LoadCursor(NULL, MAKEINTRESOURCE(IDC_ARROW));
//attribute
wndClsEx.cbSize = sizeof( WNDCLASSEX );
wndClsEx.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC | CS_BYTEALIGNCLIENT;
wndClsEx.lpfnWndProc = (WNDPROC)WndProc;
wndClsEx.cbClsExtra = 0;
wndClsEx.cbWndExtra = 0;
wndClsEx.hInstance = hInstance;
wndClsEx.hIcon = hIcon;//LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICONMAINWND));
wndClsEx.hCursor = hCursor;//(HCURSOR)LoadCursor(hInstance, (LPCTSTR)IDI_ARROW);
wndClsEx.hbrBackground = (HBRUSH)COLOR_WINDOW;
wndClsEx.lpszClassName = (LPCTSTR)szMainWndClass;
wndClsEx.lpszMenuName = NULL;
wndClsEx.hIconSm = hIcon; DWORD dwRet = 0;
dwRet = RegisterClassEx( &wndClsEx );
if ( dwRet == 0 )
{
return 0;
} return 1;
}
注册主窗口类失败了!
俘获的错误为“文件名、目录名或卷标名不正确!”,肯定不会与文件和目录有关,是不是卷标? 请大虾们替我看一下是不是设置属性时出的错误?
{
WNDCLASSEX wndClsEx;
HICON hIcon = LoadIcon(NULL, MAKEINTRESOURCE(IDI_APPLICATION));
//HICON h=LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICONMAINWND));
HCURSOR hCursor = LoadCursor(NULL, MAKEINTRESOURCE(IDC_ARROW));
//attribute
wndClsEx.cbSize = sizeof( WNDCLASSEX );
wndClsEx.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC | CS_BYTEALIGNCLIENT;
wndClsEx.lpfnWndProc = (WNDPROC)WndProc;
wndClsEx.cbClsExtra = 0;
wndClsEx.cbWndExtra = 0;
wndClsEx.hInstance = hInstance;
wndClsEx.hIcon = hIcon;//LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICONMAINWND));
wndClsEx.hCursor = hCursor;//(HCURSOR)LoadCursor(hInstance, (LPCTSTR)IDI_ARROW);
wndClsEx.hbrBackground = (HBRUSH)COLOR_WINDOW;
wndClsEx.lpszClassName = (LPCTSTR)szMainWndClass;
wndClsEx.lpszMenuName = NULL;
wndClsEx.hIconSm = hIcon; DWORD dwRet = 0;
dwRet = RegisterClassEx( &wndClsEx );
if ( dwRet == 0 )
{
return 0;
} return 1;
}
注册主窗口类失败了!
俘获的错误为“文件名、目录名或卷标名不正确!”,肯定不会与文件和目录有关,是不是卷标? 请大虾们替我看一下是不是设置属性时出的错误?
解决方案 »
- 各位这是什么问题啊?
- 列表控件上显示数据库中的数据
- 不同窗体控件的ID
- imagelist内存泄露
- 如何取得dll的文件名
- CHtmlView,在第一次打开的窗口(假设为A)点击一个超链接,在OnNewWindow2中弹出一个新窗口B。然后关闭A,则B也跟着被关闭了。
- 我用 atl 做了一个 activex 控件 ,mfc 做支持的,但是写了一个接口函数,调用不成功,不知道怎么搞的。
- 如何在DLL中用AfxBeginThread()创建CWinThread
- 我想在服务器端弄一个服务器日志,请问该怎么弄?
- 高分求助!
- 关于如何取得文件全路径的简单问题?
- 各位救命,最近看了宽带在线影院网站之后,我失去了更改IE设置的权限,望四方朋友帮帮忙!
HCURSOR hCursor = LoadCursor(NULL, MAKEINTRESOURCE(IDC_ARROW));改为--->HICON hIcon = LoadIcon(NULL, IDI_APPLICATION));
HCURSOR hCursor = LoadCursor(NULL, IDC_ARROW));
但是,是不是你还有一个别的程序在运行,而它恰好也注册了与szMainWndClass一样的窗口类?!试试把szMainWndClass改成一个怪名字。
下面是我自己的成功程序的一段代码,你可自己比较比较
wcm.cbSize=sizeof(wcm);
wcm.style=CS_VREDRAW | CS_HREDRAW ;
wcm.lpfnWndProc=(WNDPROC)Main_Proc;
wcm.cbClsExtra=0;
wcm.cbWndExtra=0;
wcm.hInstance=hInstance;
wcm.hIcon=LoadIcon(hInstance,MAKEINTRESOURCE(IDI_ICON1));
wcm.hIconSm=LoadIcon(hInstance,MAKEINTRESOURCE(IDI_ICON1));
wcm.hCursor=LoadCursor(NULL,IDC_ARROW);
wcm.hbrBackground=(HBRUSH)COLOR_WINDOW;//GetStockObject(LTGRAY_BRUSH);
wcm.lpszMenuName=NULL;
wcm.lpszClassName=szWndName;
if(!RegisterClassEx(&wcm))
{
MessageBox(NULL,"初试化出错!","ERROR !",MB_OK);
return FALSE;
}
{
LPVOID lpMsgBuf;
//char szTemp[10] = {0};
//itoa((DWORD)GetLastError(), szTemp, 10);
//MessageBox( NULL, szTemp, "Error", MB_OK | MB_ICONINFORMATION );
FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM |
FORMAT_MESSAGE_IGNORE_INSERTS,
NULL,
GetLastError(),
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
(LPTSTR) &lpMsgBuf,
0,
NULL
);
MessageBox( NULL, (LPCTSTR)lpMsgBuf, "Error", MB_OK | MB_ICONINFORMATION );
LocalFree( lpMsgBuf ); return FALSE;
}
这是我俘获错误的代码,关键是替我分析一下为什么,什么情况下会出现那样的错误?请大家能替我分析一下,明天我来看贴子。