对开发人员而言,编写 .NET 类型以及从非托管代码使用该类型是不同的活动。 本部分介绍编写与 COM 客户端互作的托管代码的几个提示:
-
要向 COM 公开的所有托管类型、方法、属性、字段和事件都必须是公共的。 类型必须具有公共无参数构造函数,这是唯一可以通过 COM 调用的构造函数。
-
托管代码中的自定义属性可以增强组件的互作性。
-
COM 开发人员可能需要汇总引用和部署程序集所涉及的步骤。
此外,本部分还确定了从 COM 客户端使用托管类型的相关任务。
从 COM 使用托管类型
-
程序集中的类型(和类型库)必须在设计时注册。 如果安装程序未注册程序集,请指示 COM 开发人员使用 Regasm.exe。
-
COM 开发人员可使用当前使用的相同工具和技术引用程序集中的类型。
-
COM 开发人员可以调用 .NET 对象上的方法,就像在任意非托管类型上调用方法一样。 例如,COM CoCreateInstance API 激活 .NET 对象。
-
具有强名称的程序集可安装在全局程序集缓存中,并向其发布者请求签名。 不具有强名称的程序集必须安装在客户端的应用程序目录中。