- UID
- 478918
- 积分
- 0
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2006-8-15
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
我在利用vs.net2003+arx2006+autoCAD2006的组合进行cad二次开发时,使用停靠对话类的CAcUiDockControlBar的函数Create(Wnd * pParent,LPCTSTR lpszTitle,UINT nID,DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_BOTTOM,const RECT & rect = CFrameWnd::rectDefault);
时运行应用程序出错,运行时弹出错误对话框显示“未处理的异常C0000005(Access Violation Reading 0x0000),地址:7c15976h”。经检查是Create函数的CWnd * pParent出错。
源程序部分代码如下:
CDockControlBar* dockBar = NULL;
dockBar->Create(acedGetAcadFrame(), "DockControlBar");
BOOL CDockControlBar::Create(CWnd* pParent, LPCSTR lpszTitle)
{
CString strWndClass;
strWndClass = AfxRegisterWndClass(CS_DBLCLKS, LoadCursor(NULL, IDC_ARROW));
CRect rect(0,0,250,250);
if (!CAcUiDockControlBar::Create(strWndClass, lpszTitle, VISIBLE|WS_CHILD|WS_CLIPCHILDREN,rect,pParent,0))
{
return (FALSE);
}
return (TRUE);
}
//程序运行至if语句时出错,其中pParent所传递的参数为acedGetAcadFrame(),当pParent=NULL时,运行不会出错。
请高手相助! |
|