oceang_y 发表于 2012-8-29 09:46:12

关于 CAcUiDockControlBar::Create 执行失败

开发环境:VS2008+ObjectArx2010+win2003

代码:
BOOL CDockMenuDlg::Create (CWnd *pParent, LPCSTR lpszTitle) {
      CString strWndClass ;
      strWndClass =AfxRegisterWndClass (CS_DBLCLKS, LoadCursor (NULL, IDC_ARROW)) ;
      CRect rect (0, 0, 210, 465) ;
      GetClientRect(&rect);
      if (!CAcUiDockControlBar::Create (
                        strWndClass, (LPCTSTR) lpszTitle, WS_VISIBLE | WS_CHILD | WS_CLIPCHILDREN,
                        rect, pParent, 0
                )
                ){
                  return (FALSE) ;
             }

      SetToolID (&clsCDockMenuDlg) ;

      // TODO: Add your code here
      
      return (TRUE) ;
}      

以上代码部分,在使用VS2008启动AutoCAD2010,再加载Arx文件运行是没有任何问题;但是单独用AutoCAD2010单独加载Arx文件后,会执行出错;

经过查看变量:pParent在使用VS2008启动的Debug执行下是不为空,单独使用AutoCAD2010加载Arx文件,执行过程pParent也不为空;在release版本也出错;编译都能通过;

请问各位同学,有没有谁遇到这个怪异的问题,谢谢了。

aeo000000 发表于 2013-4-1 11:55:36

dlg = new CDockMenuDlg;
dlg->Create (acedGetAcadFrame (), _T("...")) ;

没认个爹就想运行吗?
页: [1]
查看完整版本: 关于 CAcUiDockControlBar::Create 执行失败