C# 注册COM+组件步骤

1. 编写Com+组件


在建立C#工程之后必须要给类一个强名称.

    要创建强名称,可以使用 sn 工具.此命令行工具有许多选项,在命令提示符处键入 sn /? 可以查看所有选项.对程序集签名所需的选项是“-k”,它将创建一个密钥文件.默认情况下,该文件使用 .snk 作为扩展名.例如,要创建一个名为 MyCom.snk 的密钥文件,可以使用以下命令行:
sn -k MyCom.snk
然后在工程中引用这个强名称
方法如下:
( 1 ):注释掉AssemblyInfo.cs中的[assembly: AssemblyKeyFile( "" )]和[assembly: AssemblyKeyName( "" )]
( 2 ): 在组件类中写入
using System.Data.OleDb;//引用 ADO.net命名空间
using System.Data;//引用数据空间
using System.Runtime.InteropServices;//为了调用GUID
System.EnterpriseServices 命名空间包涵所有COM+的类型库所以在编写COM+组件的时候一定要用到System.EnterpriseServices命名空间,这个命名空间在引用中.net页下可以找到
using System.EnterpriseServices;//引用COM+名命空间
using System.Runtime.CompilerServices;//运行时编译服务器
using System.Reflection;//用些全局属性取得强名属性
[assembly: ApplicationName( "myCom" )]
//强名文件名和文件属性.用sn.exe生成,用法 sn -k mycom.snk
[assembly: AssemblyKeyFileAttribute( "mycom.snk" )]
[assembly: AssemblyKeyName( "mycom.snk" )]
( 3 )组件类的写法
组件类的写法有二种一种是以前的那种
一种是基于接口编程的例如:
namespace myCom//把所有代码写到相应的命名空间内
{
    //每一个接口一个GUID号
    [Guid( "549047DE-9F3B-4781-A1F6-F3C852091FC9" )]
    //接口类型ComInterfaceType.InterfaceIsDual接示接口需要双重公开给 COM+
    //这个属性是接口的属性
    [InterfaceType( ComInterfaceType.InterfaceIsDual )]
    //定义接口
    public interface Add
  
    {
        接口内的方法返回布尔值有一个整型参数
        bool AddData( int d );
      
        bool AddDataM( int d );
    }
    //实现这个接口
    //事务属性表示需要新事务
    /

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值