【问题标题】:What are Modules when creating COM objects with Embarcadero C++ Buider使用 Embarcadero C++ Builder 创建 COM 对象时的模块是什么
【发布时间】:2011-06-17 17:14:33
【问题描述】:

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

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

【问题讨论】:

    标签: com module c++builder


    【解决方案1】:

    您说在文档中找不到“好信息”;你发现了什么?RAD Studio help has a section specifically explaining modules,上面写着:

    一个模块定义了一组函数, 通常是一组 DLL 入口点。 你定义一个模块

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

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

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

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

    它似乎将外部 DLL 中存在的方法指定给类型库内置的任何模块(EXE 或 DLL)。这到底是用来做什么的……这是个好问题。

    【讨论】:

    • 我可能应该在文档中包含此参考,但我不明白它的含义。这将如何使用以及它有什么用处?
    【解决方案2】:

    MSDN Library page 中描述了 module 属性。它允许在 DLL 中声明入口点。这与 COM 关系不大,它只是类型库的一种能力。您会发现很少有可以使用它们的语言开发环境。我认为VB6就是其中之一。嗯嗯。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-03
      相关资源
      最近更新 更多