提示 Warning: Window creation failed: GetLastError returns 0x0000057F,其中 0x0000057F指的是找不到窗口类别。
原代码:
CPropertyPane m_Dictionary; //CPropertyPane是从CWnd继承过来的
m_Dictionary.Create(_T("新建控件"), NULL, WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS, CXTPEmptyRect(), this, 0);
问题说明:窗口create是直接从CWnd继承一个类的 .窗口类名必须是你自己注册了的,要不,你就必须用系统预定义的窗口类名!!
比如:STATIC , BUTTON,等等!
修改后代码:
m_Dictionary.Create(_T("STATIC"), NULL, WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS,CXTPEmptyRect(), this, 0);
2. 编译问题d:\script\src\scriptedit\anmsmenucreator.h(75) : error C2653: 'MSXML2' : is not a class or namespace name
解决办法:在Stdafx.h文件中添加
#import <..\..\..\Client\bin\msxml4.dll> rename ("DOMDocument", "ANM_XML") using namespace MSXML2;
3. error C2440: 'static_cast' : cannot convert from 'void (__thiscall C**Frame::* )(LPCREATESTRUCT)' to 'int (__thiscall CWnd::* )(LPCREATESTRUCT)'
Cast from base to derived requires dynamic_cast or static_cast
原因:函数OnCreate定义和实现的返回值类型不一致。分别写成为void和int。
4. 链接问题:error LNK2001: unresolved external symbol "__declspec(dllimport) struct HWND
原因:函数OnCreate定义和实现的返回值类型不一致。分别写成为void和int。
5.运行后提示:Warning: no document names in string for template #1000
原因
6.error C2660: 'CMDIChildWnd::Create' : function does not take 8 arguments