在MFC但文档程序中的ATL Simple Object, 不知怎样才能在另一程序中生成

解决方案 »

  1.   

    在MFC添加类向导中使用类型库来生成类,
    这里使用包含ATL Simple Object的那个程序生成的类型库文件(.tlb),将会生成ATL Simple Object里所定义的类,直接使用他们就行了。
      

  2.   

    我还是不明白,怎样用.tlb,怎样做别的。我只得到了Interface的完整定义,和Smart Pointer的完整定义。我还得到类似struct MyComObect,和struct CMyDoc的东西,这些都不允许我直接用。我尝试过用标准方法调用,类似IMyInterfacePtr(CLSID),但得到RPC_E_SERVERFAULT错误,和另一个调用的不知名的错误0xC0000005,猜想可能是内存错误。
      

  3.   

    1)有没有调用CoInitialize(NULL)?
    2)试试吧——
    在stdafx.h中:
    #include "..\xxx\xxx.h" //你要引用的对象的头文件,通常是VC编译时自动生成的
      

  4.   

    #import "..\xxx\xxx.dll" //你要引用的组件DLL文件CoInitialize(NULL)

    IMyInterfacePtr  p;
    p.CreateInstance(__uuidof(CLSID));
    p->method();
    p.Release();
    CoUninitialize();
      

  5.   

    是程序本身有问题,不是用COM的问题,不过还是应该给分