vc+mapx开发的程序“建立空文档失败”的最可能原因

从别人那里拷来MapX+MFC的程序琢磨,在别人机子上能正确运行,到了自己机器编译通过,点击运行总是提示“建立空文档失败。”,跟踪调试发现,在下面的函数中出现问题:

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
 if (CFrameWnd::OnCreate(lpCreateStruct) == -1)    //该处CFrameWnd::OnCreate()返回-1,导致弹出出错提示!

   return -1;
 
 if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
  | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
  !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
 {
  TRACE0("Failed to create toolbar/n");
  return -1;      // fail to create
 }

  百度发现,很多帖子分析了出错原因,但我根据帖中内容调试未有任何收获。无意中找到一个CSDN的老帖子讨论这个问题,恍然大悟。

原来我的机子上没装MapX这个ActiveX控件...

  以前没怎么接触过Active控件(自己用ActiveX控件写过一些小程序,但没在别人机子上跑过,故没早遇到这种情况),这次算是一次经验积累吧。

  在此提醒跟我情况差不多的新手们一定要注意这个问题,免得浪费太多时间在这些细节上。

你可能感兴趣的:(百度,文档,mfc)