zoukankan      html  css  js  c++  java
  • 创建用于COM 应用程序的.NET 类

    一。COM 可调用类的先决条件

    1.创建Class Library项目

    2.在.NET 代码中,显式定义一个接口,并实现该接口。
      对于 COM 客户端,通过接口实现功能有一个很大的好处。
      生成 CCW(COM 可调用包装) 时,.NET 与以前版本保持接口一致。
      这有助于避免 .NET 服务器的更改破坏 COM 客户端。

    3.任何对于 COM 客户端可见的类都必须声明为公共类。
      创建 CCW 的工具只定义基于公共类的类型。相同的规则也适用于将被 COM 客户端使用的方法、属性和事件。

    4.设置项目属性
      4.1 Application->Assembly Information->勾选“Make assembly COM-Visible”
      4.2 Build->勾选“Register for COM interop”[勾选此项,编译后直接生成tlb文件。如果不在本机发布,不用勾选。]

    对于那些包含将被 COM 使用的类的 .NET 程序集,还应该考虑用密钥对签名。Microsoft 将这称为用强名称 给程序集签名。用强名称给程序集签名有助于 .NET 确保程序集中的代码在程序集发布之后未被更改过。尽管未签名的程序集也能被 COM 客户端调用,但是签名对所有全局程序集 是必需的(全局程序集是将被多个客户端共享的程序集)。


    二。使用 .NET 框架 SDK 中的程序集注册工具 (regasm),创建并注册类型库。如:
      regasm.exe Client.Console.dll /tlb:Client.Console.tlb

    参考资料:

    互操作性:从 COM 组件调用 .NET 组件(.NET 开发(通用)技术文章)
    http://msdn.microsoft.com/zh-cn/library/ms973800.aspx

    程序集注册工具 (Regasm.exe)
    http://msdn.microsoft.com/zh-cn/library/tzat5yw6.aspx

  • 相关阅读:
    【转】字典转模型需要注意的问题,以及第三方框架来处理字典转模型
    【转】使用SOAP访问Web服务
    Foundation框架2
    Foundation框架1
    什么是Protocol
    什么是Block
    什么么是Category
    ARC
    autorelease简介
    循环retain
  • 原文地址:https://www.cnblogs.com/jacktang/p/1948338.html
Copyright © 2011-2022 走看看