msmdud吧 关注:1贴子:5
  • 0回复贴,共1

VC中如何引用.net所写的dll

只看楼主收藏回复

1.C#端
   (1).声明接口IXmlReader,用以下特性修饰:[GuidAttribute("..."), InterfaceType(ComInterfaceType.InterfaceIsDual)]
   (2).声明类XmlReader,用以下特性修饰:[GuidAttribute("..."), ClassInterface(ClassInterfaceType.None), ProgId("CADCode2.XmlReader")]
   (3).CADCode2—属性—应用程序—程序集信息,勾选“使程序集com可见”

2.VC端
   (1).复制CADCode2.dll到VC程序某目录path下,并将path设为VC工程的“附加包含目录”
   (2).复制RegAsm.exe到path,运行“RegAsm.exe CADCode2.dll /tlb:CADCode2.tlb /codebase”
   (3).#import "CADCode2.tlb"
   (4).使用方法如下:
CoInitialize(NULL);
CADCode2::IXmlReaderPtr p;
p.CreateInstance(__uuidof(CADCode2::XmlReader));
//此处使用XmlReader中的方法
CoUninitialize();

3.发布
   (1).复制CADCode2.dll、RegAsm.exe到发布目录
   (2).运行“RegAsm.exe CADCode2.dll /tlb:CADCode2.tlb /codebase”


1楼2008-04-23 16:42回复