小弟刚开始学VC正在看MFC Windows 程序设计 jeff Prosise里面的例子  提到创建单文档时Appwizard 第一步时  不选  Document/View Architecture Support 再step3,step4时
取消
Active X
3D
Docking Toolbar
Initial Status Bar其它默认生成的程序 编译没问
为什么执行时  会发生错误   请教高手???

解决方案 »

  1.   

    既然是单文档那么第一步就应该选择 Document/View Architecture Support 。
    如果不要单文档那么就应该是WIN32控制台程序。
      

  2.   

    这好像是MFC的Bug
    但是你把CMainFrame中的OnSetFocus函数中加入
    if (IsWindow(m_wndView.m_hWnd))
    {
        m_wndView.SetFocus();
    }
    就可以运行了
    但是还有一些问题,好像View的消息没有响应:)
      

  3.   

    的确是MFC的一个BUG,就是STEP1时,选了 Single Document ,
    又没有选中Document/View architecture 
    呵呵,VS7已经改正!!或者VS6装SP5
    又或者你自己改,在MainFrm.h中加入:
       CChildView    m_wndView;在 MainFrm.cpp中加入:int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
    {
        //...
        //Add Code Here    if (!m_wndView.Create(NULL, NULL, AFX_WS_DEFAULT_VIEW,
    CRect(0, 0, 0, 0), this, AFX_IDW_PANE_FIRST, NULL))
    {
    TRACE0("Failed to create view window\n");
    return -1;
    }    //...
    }
    另外,你的那本jeff Prosise 的书中也可以找到改正后的代码.