我用vc6作了个mfc dll,然后插入一个对话框,再加入一个activex控件,为什么测试时不好用呢,如果去了activex控件,就可以显示对话框了。难道vc不支持在动态库中使用activex控件么,请大虾们指点,最好能有例子或者详细步骤。

解决方案 »

  1.   

    可能是你新加的activex控件初始化有问题
      

  2.   

    查了以前的相同问题的回答,都说加入AfxEnableControlContainer,但是我的还是不好用啊,那位大虾能帮忙做个例子出来呢,万分感谢,我可以再加分的,真的很着急
      

  3.   

    因为你插的那个对话框不是一个activeX容器,所以就不行了!你可以用atl的CAxWindow这个容器动态添加,哈哈!Eg:
    #include <atlbase.h>
     CComModule _Module;
    #include <atlcom.h>
    #include <atlwin.h>
    #import "D:\3dgissdk\tsSpace\_tsSpace.tlb" no_namespace
    CAxWindow m_SpaceContainer;
    RECT rc;
    GetClientRect(&rc);
    m_SpaceContainer.Create( this->m_hWnd, rc, LPCTSTR("tsSpace.Space.1"), WS_CHILD|WS_VISIBLE|WS_HSCROLL|WS_VSCROLL );
      

  4.   

    不过还要记着:com初始化:
    CoInitialize(NULL);

    CoUninitialize();