zoukankan      html  css  js  c++  java
  • COM+服务器的.Net组件实现 服务器端

    闲来无事,用C#控件(Class Library)作个了简单的双机互连COM+示例

    1. 准备工作:两台主机,各自软件配置分别为
    1. 服务器:Vs.net 2003 + .Net Framework 1.1 SDK SP1 + WinXP pro SP2
    1. 客户端:.Net Framework 1.1 SP1 Distributed Package + WinXP pro SP2

    2. 在服务器上新建一个C# Class Library工程,将System.EnterpriseServices.dll添加进项目引用

    3. 开启Vs.net 2003命令提示控制台,在%Project Directory%目录下生成一个用于组件签名的密钥对,输入
    3. sn -k keyfile.snk

    4. 修改项目的AssemblyInfo.cs文件,在其中添加引用声明:
    using System.EnterpriseServices;
    4. 同时修改/添加其中几行Assembly定义属性:
    [assembly: AssemblyDelaySign(false)]
    [assembly: AssemblyKeyFile(
    "..\\..\\keyfile.snk")]
    [assembly: AssemblyKeyName(
    "")]

    [assembly: ApplicationActivation(ActivationOption.Server)]
    [assembly: ApplicationAccessControl(
    false)]

    5. 修改项目Class1.cs文件,添加COM+服务器组件的主体内容如下:
    using System;
    using System.EnterpriseServices;

    namespace ccc
    {
        
    public interface IMathEx
        
    {
            
    int sum(int a,int b);
        }

        
    public class Test: ServicedComponent,IMathEx
        
    {
            
    public Test()
            
    {
            }


            
    IMathEx 成员
        }

    }
    5. 其中,我们在组件名空间ccc中定义了一个IMathEx接口,里面只有一个求和函数,而类Test实现了这个接口

    6. 编译工程项目,%Project Directory%\bin\debug目录下将生成ccc.dll和ccc.tlb两个文件

    7. 在%Project Directory%\bin\debug目录下手工注册Assembly至COM+目录,键入命令:
    7. regsvcs -appname:MyApp ccc.dll

    8. 至此服务器端组件开发、部署完毕
  • 相关阅读:
    ubuntu安装打印机驱动
    clang-format的介绍和使用
    [C++面向对象]-C++成员函数和非成员函数
    [Qt2D绘图]-06QPainter的复合模式&&双缓冲绘图&&绘图中的其他问题
    [Qt2D绘图]-05绘图设备-QPixmap&&QBitmap&&QImage&&QPicture
    [Qt2D绘图]-04绘制文字&&绘制路径
    [Qt2D绘图]-03坐标系统之坐标变换
    [Qt2D绘图]-02坐标系统&&抗锯齿渲染
    [Qt2D绘图]-01Qt2D绘图基本绘制和填充
    [Qt插件]-01Qt插件&&提升部件(自定义控件)
  • 原文地址:https://www.cnblogs.com/neoragex2002/p/74731.html
Copyright © 2011-2022 走看看