• .NET Windows服务应用程序


    此文旨在记录个人对windows服务的理解以及学习记录,高人可以直接绕行。

    1.Windows 服务体系结构

    @http://technet.microsoft.com/zh-cn/library/aa998749(v=exchg.65).aspx

    Windows 服务(也称服务应用程序)是无论用户是否登录都运行在 Windows 计算机上的应用程序。Windows 服务包含一个可执行文件、一个存储应用程序组件的目录,以及定义服务参数的注册表设置。Windows 服务实现一个可编程的接口,SCM 可以使用该接口来控制服务。Windows 服务既可以在系统启动时自动启动,也可以由用户使用服务控制程序来手动启动。服务控制程序是使用 SCM 功能来控制服务的应用程序。例如,“服务”工具和命令行工具 net.exe 和 SC.exe 就是服务控制程序。

    下列图说明了 Windows 服务体系结构。

    注意:SCM 进程是一个远程过程调用 (RPC) 服务器服务。为了控制远程计算机上的服务,服务控制程序使用 RPC 在本地或通过网络与 SCM 通信。

    2. .NET Windows服务(名称空间System.ServicesProcess)

      1.服务程序

      .NET Framework的服务的创建需要继承ServiceBase类.ServiceBase类用于注册服务、响应开始、停止等请求。

      2.服务控制程序

      ServiceController类可以获取服务的相关信息,如服务名称、服务类型以及控制服务的开始、停止等操作。

      3.服务的安装与配置

      服务必须在注册表中配置(HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices)。

      服务的安装可以有两种方式:

      1.手动写注册表

        通过regedit命令,我们可以打开注册表编辑已有的服务或添加新的服务项。

      2.服务安装程序

        ServiceProcessInstaller类 用于配置服务进程,该配置信息为该服务进程下的所有服务所共享。

        ServiceInstaller类 用于配置具体的服务,服务进程中的每个服务都需要一个属于自己的ServiceInstaller实例。

        RunInstallerAttribute特性 指定一个安装程序(继承Installer),在安装程序集时,是否可以被自定义安装程序或安装工具(如installutil.exe)调用。

    3.服务控制程序简单示例

      

    源代码: http://files.cnblogs.com/BugQiang/BugQiang.SCM.rar

      

  • 相关阅读:
    Ilya Muromets(DP or 思维)
    2018 焦作网络赛 L Poor God Water ( AC自动机构造矩阵、BM求线性递推、手动构造矩阵、矩阵快速幂 )
    上下界的网络流模板
    计蒜客 2018南京网络赛 I Skr ( 回文树 )
    回文树 / 自动机模板
    Nowcoder 练习赛26 D xor序列 ( 线性基 )
    线性基模板
    Tarjan求强连通分量、求桥和割点模板
    Nowcoder 挑战赛23 B 游戏 ( NIM博弈、SG函数打表 )
    第二类斯特林数模板
  • 原文地址:https://www.cnblogs.com/BugQiang/p/3187979.html
Copyright © 2020-2023  润新知