如何编写和注册.Net的Com组件

Com+组件在vb6.0和vc++的年代是风靡一时的,当前.net framework的构件系统,因为其无需注册等优点渐渐取代了Com+的地位,但一些系统由于历史问题,还是需要com+支持的,其实在.net中编写com+组件也是一件非常简单的事情.

在vs2003中,要想生成com+组件,其实额外的工作只有一个,就是对项目按下图所示,  



程序其他部分和其它没有差别,不再赘述

重点在于如何注册.net写的com+组件

网上有一些说法,但我按照其操作,均未成功,或者在程序访问的时候,出现权限问题。其实.net 写的com+组件不能直接用regsvr32.exe来注册,因为这样一来,系统会缺少元数据,我们首先需要用.net framework提供的工具regasm,将该com组件所需元数据写入注册表中,注册表允许 COM 客户程序以透明方式创建 .NET Framework 类。类一经注册,任何 COM 客户程序都可以使用它,就好像该类是一个 COM 类。在编译好的目录中,com组件会多产生一个同名的.tlb文件,regasm的用法如下:regasm /tlb: /tlb:Encrypter.tlb Encrypter.dll,此步骤经过我的实验,不可或缺。

然后,就可以利用组件服务将.net com组件设置为com服务了。设置过程中,需要注意下权限的设置就行了。

 

有关tlb文件的说明如下:

TLB是一种OLE(或ActiveX)定义文件,它包括常数、接口(Interface)、类等的定义。你可以在VB的集成环境的Project|Reference中将TLB文件加入项目,然后在Object Browser中看到该文件中包括哪些常数、接口、类,而每个类又包括什么方法和属性。微软提供的各种SDK中通常包括一个或数个TLB文件以方便编程。你也可以制作TLB文件,首先编写一个ODL文件(在VC++的帮助中有语法说明),然后使用MKTYPLIB(在VB光盘上有)编译生成TLB文件。类似的文件,还有Office所提供的OLB文件。

察看http://www.dotblogs.com.tw/huanlin/archive/2008/04/23/3196.aspx能获得更过得信息

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值