本帖最后由 lixiaoli20072765 于 2013-03-24 15:18:50 编辑

解决方案 »

  1.   

    如果你已注册这个控件,那么你只能找ActiveX 控件源程序,在VS2010里重新编绎一遍试试.有可能是在VC6.0下用了已被淘汰的库或函数,并不是标准的WIN32的函数及库
      

  2.   

    编译是成功的,但是运行的话就一直是File:f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\occcont.cpp Line:925这个错误,也就是ASSERT(IsWindow(pTemp->m_hWnd))
      

  3.   


    那句代码的代表的意思可能是,某个窗口创建不成功,最有可能的就是 控件 创建不成功。
    首先确认你的 ActiveX 的dll或ocx文件已经成功的注册。
    其次,确认你那个VS2010 的项目是64位还是32为的。 64位应用程序是不能加载32位的DLL的。
      

  4.   

    用到串口了吧,去网上下载MSCOMM32.OCX文件  ,复制到C盘System32目录下,然后点击开始—>运行:输入regsvr32 MSCOMM32.OCX注册,提示成功就ok了
      

  5.   

    在一个网站上看到了一个解决方案,可以解决报错的问题。
    将InitInstance()中调用的 InitATL() 替换为 AfxOleInit()即可。Code:
    //Under the applications ::InitInstance()//        if (!InitATL())
    //                return FALSE;        if (!AfxOleInit())
                    return FALSE;