C#创建Com组件

来源:互联网 发布:八上政治行知天下答案 编辑:程序博客网 时间:2024/05/22 13:13

COM是微软所有软件架构的基础,windows操作系统、office、vs开发工具、. net frameWork等都是以此为基础,Com是一项较复杂的技术,很长时间内它只能用C++ 编写,但有.net FrameWork后,编写COM 组件变得容易了。

http://www.codeproject.com/KB/vb-interop/csCom.aspx这里有一个很好的实例可供参考,但在Win7下此实例运行不了,有几点需要注意:

1.如果在接口定义时使用了[InterfaceType(ComInterfaceType.InterfaceIsIDispatch)]属性,C++的客户程序不能通过正常调用使用Com组件(comPtr->OneMethod()),只能通过IDispatch接口的Invoke()调用Com组件。用[InterfaceType(ComInterfaceType.InterfaceIsDual)]属性,双接口,可以保证C++客户端的正常调用。

2.AssemblyInfo.cs文件中的[ComVisble(false)]要改为true。使用SN工具生成密钥,对生成的Assembly使用强命名。

3.Vs2008中Project->Proporties->Build-> Register for Com选项在Win7下不起作用,不能将生成的Assembly注册到系统的Global Assembly  Cache中,这导致Com管理器无法找到DLL文件。使用Regasm /tlb将DLL注册到注册表中,Gacutil /i 将Assembly放入 Global Assembly Cache。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 淘宝地址中包含了违禁词怎么办 微信支付失败但是钱扣了怎么办 支付宝向别人收款交易关闭了怎么办 从淘宝充的晋江币充值异常怎么办 接手转让店铺会员要求退卡怎么办 转转买手机卖家拒绝退款怎么办 淘宝买的东西电话号码留错了怎么办 平板电脑没电关机没保存文件怎么办 恢复出厂设置需要谷歌账号怎么办 华为手机云端里照片删除了怎么办 客户退货卖家一直没收到货怎么办 在淘宝买到假货投诉不管用怎么办 差评不接电话不回旺旺不要钱怎么办 饿了么同行恶意差评怎么办 苹果手机更新后淘宝用不了怎么办 淘宝网快递丢件了买家怎么办 评价后忘了截图五星好评怎么办 在淘宝被骗了好评返现怎么办 苹果4s微信版本过低怎么办 微信版本太低无法登录怎么办 苹果4微信版本低登录不了怎么办 安卓手机微信版本低登录不了怎么办 苹果微信版本低登录不了怎么办 安装包与当前版本不兼容怎么办 游戏与苹果手机系统不兼容怎么办 闲鱼买家申请退款不退货怎么办 在淘宝买的战地1登录不了怎么办 支付宝转账到注销的账号怎么办 支付宝用户支付密码被锁定怎么办 淘宝提现需要的手机宝令怎么办 手机换号码了支付宝账号怎么办 卖家收到货迟迟不给退款怎么办 闲鱼东西已发出买家申请退款怎么办 如果东西在路上买家要退款怎么办 卖家收到退的货后不退款怎么办 扣48分淘宝被限制登录怎么办 淘宝网申请退款卖家不理怎么办 高考生如果把登录密码忘记了怎么办 普高考生登录密码忘记了怎么办 淘宝买的流量卡然后网卡怎么办? 忘记了qq号绑定了手机怎么办