你使用的是debug版本还是Release版本呢?

解决方案 »

  1.   

    同意楼上的。
    你也可以手工用
    regsvr32 “你的FlexGrid控件的全路径“ 注册
      

  2.   

    复制MSFLXGRD.OCX
    注册MSFLXGRD.OCX格式:regsvr32 MSFLXGRD.OCX
      

  3.   

    谢谢楼上的朋友的回答。我debug版本、Release版本都试过了也用regsvr32注册了。还有没有别的可能性?或者怎样才能知道我未注册成功?
      

  4.   

    regsvr32 MSFLXGRD.OCX注册成功与否都会有提示框!所以看出来,你根本没有注册Active OCX。
      

  5.   

    to prog_st(st):呵呵,是我没表达清楚。
    系统是告诉我注册成功了,但还是不好使,一运行程序就出错。 
      

  6.   

    那就不是MsFlexGrid的问题,是其他原因导致错误!
      

  7.   

    关于ActiveX控件的问题详细说明: 
        MsFlexGrid 控件已注册成功。我在一个很短的试验程序中先用资源编辑器在对话框中加入该控件,也在view类中自定义的test()函数中用msflexgrid.h文件中的Create()函数创建该控件,编译运行后在主菜单中选dlg项启动对话框能在对话框中显示该grid控件。 在主采单中选test项进入test()函数并执行Create()后也能在view类的主窗体中正常显示该grid控件。但将本exe文件(release 和 debug 均可)移到任意一台未装VC但该控件已成功注册的计算机中运行时只是在对话框中能正常显示该grid控件,而在view中用Create()创建该控件时因该函数返回假而不能显示该grid控件。经跟踪发现在该控件的Create()函数中用到了一个名为CLSID的16个字节的ID码。不知是否不同的计算机具有不同的CLSID码。但将本exe文件移到任意一台安装了VC系统的计算机中运行全部正常。
      

  8.   

    关键是控件没有注册,你可以通过代码在第一次运行时注册。并不是只有装VC才可用,如你你装了OFFICE或VB照样可用。
      

  9.   

    我先将该控件复制到一台没有装VC的机器上(我已对其确认,机器上没有此控件),然后用REGSVR32对其注册,然后将编译好的程序拷贝到该机器上(编译时使用USE MFC IN STATIC LIBRARY选项),结果一切正常。不知你是否用过这种办法。若还不行,则基本可以肯定是你的操作系统或是你的程序本身有问题。
      

  10.   

    你的程序肯定不是让msflexgrid基于view的动态显示的,我也遇到了这个问题,现在不知道如何解决?
      

  11.   

    也许没有MFC42(d).dll,MSVCRT(d).dll两个dll
      

  12.   

    faint,贴出来看看,我的也用到了FlexGrid。
      

  13.   

    wangzh(独孤求问),能不能快点把解决方法贴出来,这对大家很有用,谢谢!