使用Embarcadero C ++ Builder创建COM对象时的模块是什么

时间:2011-06-17 17:14:34

标签: com module c++builder

我正在用Embarcadero C ++ Builder创建一个COM库。 ridl文件的设计者提供了一些可以添加到ridl的东西。我想除了创建新的“模块”之外,我理解所有这些。我在文档中找不到好的信息。

什么是“模块”以及它在COM中的用途是什么?

2 个答案:

答案 0 :(得分:2)

你说你在文档中找不到'好信息';您找到了什么? RAD Studio help has a section specifically explaining modules,其中包含:

  

模块定义了一组函数,   通常是一组DLL入口点。   您可以通过

定义模块      
      
  • 指定它在属性页面上表示的DLL。
  •   
  • 使用工具栏或对象列表窗格添加方法和常量   上下文菜单。对于每种方法或   常数,你必须定义它   属性通过在中选择它   对象列表窗格并设置   “属性”页面上的值。
  •   
     

对于模块方法,您必须指定一个   名称和DLL入口点使用   属性页面。宣布   函数的参数和返回类型   使用参数页面。

     

对于模块常量,请使用   属性页面指定名称,   类型和价值。

     

注意:类型库编辑器不会生成任何声明或   与模块相关的实现。   必须将指定的DLL创建为   单独的项目。

似乎它正在将外部DLL中存在的方法指定为内置类型库的任何模块(EXE或DLL)。究竟是什么用于...是一个很好的问题。

答案 1 :(得分:1)

MSDN Library page中描述了模块属性。它允许在DLL中声明入口点。这与COM几乎没有关系,它只是一个类型库的功能。您会发现很少有可以使用它们的语言开发环境。我认为VB6就是其中之一。因人而异。