开发COM+组件需要注意的几个地方
2007-11-04 21:33
435 查看
1.必须引用System.EnterpriseServices和System.Reflection
2.组件类必须派生至ServicedComponent.
3.组件类一般情况下都要由下面
[Transaction(TransactionOption.Required)]
[assembly: ApplicationActivation(ActivationOption.Server)]
这两个元属性进行修饰,TransactionOption和ActivationOption都是枚举类型,有多个枚举值,各个枚举值代表的含义不一样.
4.需要事务处理的函数可以可以用[AutoComplete(true)]自动事务处理,也可以通过事务上下文类ContextUtil的ContextUtil.EnableCommit();ContextUtil.SetComplete();ContextUtil.SetAbort();手动事务处理.
5.配置程序集AssemblyInfo.cs.加上下面的:
[assembly: AssemblyKeyFile("..//..//key.snk")]
[assembly: ApplicationAccessControl(true)].
再把[assembly: ComVisible(false)]改为[assembly: ComVisible(true)].
注意key.snk这个文件是通过SDK命令行生成的:sn -k key.snk.这个文件默认生成在SDK文件夹下面的V2.0文件夹里.
需要把这个密钥文件复制到与工程文件目录同级的目录下.
6.将类库生成为DLL文件,右键类库文件--生成,就自动在BIN文件夹里生成了同名DLL文件.
7注册COM+组件,在SDK命令提示行里输入:regsvcs DLL文件的路径.
8在客户端使用COM+组件,和使用普通的类库文件一样,先将该类库文件引用进来,当然也要引用System.EnterpriseServices名称空间和组件类库的名称空间.
以上就是我个人的一些总结,说的可能有点含糊,因为我也是才研究这个东东,也在学习阶段.只是把遇到的问题总结下来以便日后查看.
2.组件类必须派生至ServicedComponent.
3.组件类一般情况下都要由下面
[Transaction(TransactionOption.Required)]
[assembly: ApplicationActivation(ActivationOption.Server)]
这两个元属性进行修饰,TransactionOption和ActivationOption都是枚举类型,有多个枚举值,各个枚举值代表的含义不一样.
4.需要事务处理的函数可以可以用[AutoComplete(true)]自动事务处理,也可以通过事务上下文类ContextUtil的ContextUtil.EnableCommit();ContextUtil.SetComplete();ContextUtil.SetAbort();手动事务处理.
5.配置程序集AssemblyInfo.cs.加上下面的:
[assembly: AssemblyKeyFile("..//..//key.snk")]
[assembly: ApplicationAccessControl(true)].
再把[assembly: ComVisible(false)]改为[assembly: ComVisible(true)].
注意key.snk这个文件是通过SDK命令行生成的:sn -k key.snk.这个文件默认生成在SDK文件夹下面的V2.0文件夹里.
需要把这个密钥文件复制到与工程文件目录同级的目录下.
6.将类库生成为DLL文件,右键类库文件--生成,就自动在BIN文件夹里生成了同名DLL文件.
7注册COM+组件,在SDK命令提示行里输入:regsvcs DLL文件的路径.
8在客户端使用COM+组件,和使用普通的类库文件一样,先将该类库文件引用进来,当然也要引用System.EnterpriseServices名称空间和组件类库的名称空间.
以上就是我个人的一些总结,说的可能有点含糊,因为我也是才研究这个东东,也在学习阶段.只是把遇到的问题总结下来以便日后查看.
相关文章推荐
- VS2008开发MOSS工作流几个需要注意的地方
- 微信分享功能开发时需要注意的几个地方
- iOS开发笔记(六):UIButton需要注意的几个地方
- VS2008开发MOSS工作流几个需要注意的地方
- 用OPC Client开发时,需要从如下几个地方注意内存泄露
- 用javascript做Asp开发语言需要注意的几个关键地方
- 关于atlas和webpart开发几个需要注意的地方。
- javaweb学习笔记:Servlet开发中需要注意的几个知识点
- 系统开发在设计时需要注意的地方
- Lora程序设计需要注意的几个地方
- 自定义组件中使用枚举类型时需要注意的地方
- 几个提升java性能需要注意的地方
- spring 3.0 中 @Scheduled cron表达式需要注意的几个地方
- 开发:随笔记录之 OSGI的jar添加几个小问题及其注意的地方
- java打包exe程序需要注意的几个地方
- Oracle分析函数model使用时需要注意的几个地方(二)
- 用NSAttributedString实现简单的图文混排-----(确实几个需要注意的地方都注意到了就好了。)
- SPD开发工作流需要注意的地方1【SPD开发的工作流中如何修改审批状态】
- IIS+PHP+MySQL环境中PHP.INI需要注意的几个地方
- 自行实现HTTP协议时需要注意的几个地方