如何在Visual Studio 2008中创建COM DLL?

Mar*_*ram 8 c++ com dll guid visual-studio-2008

自从我写了一个COM dll以来已经很久了.我现在已经创建了几个类,它继承了一些COM接口,但我想测试一下.我知道我必须在某处放置一个GUID然后用regsvr32注册它,但涉及的步骤是什么?

编辑:对不起,忘了提我正在使用C++.

Ism*_*ael 11

要创建新的ATL COM项目,您可以按以下步骤操作:

  1. 文件/新项目
  2. Visual C++/ATL/ATL项目
  3. 自定义设置,完成后按完成

您已经创建了一个新的dll,但它是空的,要添加一个COM对象,您可以这样做:

  1. 项目/添加课程
  2. Visual C++/ATL/ATL简单对象,按添加
  3. 提供您想要的名称(如MyObject),然后按"完成"添加它

如果您希望对象实现接口

  1. 在类视图中选择对象类(CMyObject)
  2. 右键单击/添加/实现界面...
  3. 您可以选择要实现的接口
    1. 来自项目文件中已有的.idl文件
    2. 来自嵌入了类型库的.tlb/.dll/.exe
    3. 从已注册的对象
  4. 完成后按完成

PS:在不同的文件夹中创建具有相同名称的新ATL项目要容易得多,并添加您自定义的文件.该向导执行多项任务并创建多个自定义文件.

对于难以逐个文件添加的较大项目,我也这样做,但不是将我的文件添加到新项目中,而是开始将设置从新项目复制到旧项目,并添加向导创建的任何其他文件并修复stdafx.h之类的标题以合并新设置.

PPS:如果你想要你的dll支持MFC,你必须选择MFC/MFC Dll而不是选择ATL项目.当您添加ATL简单对象时,向导将要求向项目添加ATL支持.