将VS2005转化成VS2010后,想使用VS2010中的CUSTOMIZE。。自定义菜单和工具栏这部分实现代码。如何调用呢。

解决方案 »

  1.   

    建议你用VS2010生成一个工程,然后看.rc文件,和你VS2005的那个工程的差别~
      

  2.   

    LS两位速度好快,呵呵,不过题目里说的是已经转化成VS2010了,在VS2005里框架类里写的是class CMainFrame : public CMDIFrameWnd
    在VS2010里框架类写的是class CMainFrame : public CMDIFrameWndEx所以我想会不会是基类的不同,我才无法调用它的一些函数,比如CMFCToolBarsCustomizeDialog
      

  3.   

    这两个类是VS2010的MFC库带有的类。
    你去看看VS2010的源码看是什么实现的。
      

  4.   

    转换了,自然会有一些MFC类库的更新,有些函数可能会有变化,最好查看对应函数的MSDN文档
      

  5.   

    我尝试也这样写
    class CMainFrame : CFrameWndEx
    报错:Error 3 error C2504: 'CFrameWndEx' : base class undefined c:\documents and settings\rboye359\桌面\laserx\MainFrm.h 19
      

  6.   

    10有一些新增的MFC类可供调用
      

  7.   

    这是我的框架类的写法:#if !defined(AFX_MAINFRM_H__0BDA2D0C_869A_4148_9446_2112FD8D6C88__INCLUDED_)
    #define AFX_MAINFRM_H__0BDA2D0C_869A_4148_9446_2112FD8D6C88__INCLUDED_
    //会不会是这句话的问题呢#if _MSC_VER > 1000
    #pragma once
    #endif // _MSC_VER > 1000class CMainFrame : public CMDIFrameWnd这是VS2010的框架类的写法#pragma onceclass CMainFrame : public CMDIFrameWndEx
      

  8.   

    VS2005带的MFC库就没这个类啊。。
    只有VS2010带了。你看能不能在VS2005中中指定MFC库的路径为VS2010下的。
    我没有这样做过,不知道会发生神马问题。
      

  9.   

    楼上的那句没有问题,楼主应该先把2010中cdmiframe类所在的头文件引入到你的工程中,因为这是新增的一些类库。
      

  10.   

    已经转化为VS2010了,并且用的是VS2010在编辑,但是在报错
      

  11.   

    class CMainFrame : CFrameWndEx
    报错:Error 3 error C2504: 'CFrameWndEx' : base class undefined 就是这句
      

  12.   

    标题应该写成VS2005 转 VS2010后遇到的问题,误导了不少人了
      

  13.   

    今天很热闹啊,帖子一下子就沉了,自己顶下,再重申下问题用VS2010 转换了一个VS2005下建的工程,但是却无法使用VS2010下的类,如
    class CMainFrame : CFrameWndEx
    报错:Error 3 error C2504: 'CFrameWndEx' : base class undefined 
      

  14.   

    include 这个文件afxframewndex.h试试 
      

  15.   

    #include "afxframewndex.h"
    class CMainFrame : public CMDIFrameWndEx还是同样的报错信息error C2504: 'CMDIFrameWndEx' : base class undefined
      

  16.   

    VS2010新建的例子如下,并没有什么头文件呢,它又是如何调用的呢,很奇怪
    // MainFrm.h : interface of the CMainFrame class
    //#pragma onceclass CMainFrame : public CMDIFrameWndEx
      

  17.   

    新建的Project,确实不需要什么头文件。
    这些头文件都写在stdafx.h了。
      

  18.   

    #include <afxcontrolbars.h>     // MFC support for ribbons and control bars
    把这一句,加到你的stdafx.h
      

  19.   

    确实2010新建的工程中的stdafx.h比我vs2005转换过来的多了个#include <afxcontrolbars.h> ,
    编译下先
      

  20.   

    一般一些common的头文件会在stdafx.h中帮你自动包含
      

  21.   

    感谢xyzhaopeng的回答,可以使用基类了
     
    不过使用VS2010的 CMDIFrameWndEx后
    像 DockControlBar这样的函数运行时会出现内存错误
      

  22.   

    看DockControlBar的MSDN等,看是否有条件没有调用.
      

  23.   

    VS2010下新建MDI后自带的自定义功能是这样的
    而我COPY它的代码打开的自定义功能的却是这样的
      

  24.   

    少了两个功能,WHY,同一个对话框类CMFCToolBarsCustomizeDialog* pDlgCust = new CMFCToolBarsCustomizeDialog(this, TRUE);
    pDlgCust->Create();
      

  25.   

    感觉用这个VS20101是比较好,用多了VC6.0,用这个有点棘手,求高手....