• .Net开发Windows服务


    2018-08-23 根据别人的整理

    开发Windows服务

    一、 开发Windows服务

    1 新建项目,选择Windows服务,如下图:

     

    2 创建好后,编译器会自动创建一些文件,其中会有一个Service1类文件,该文件是服务的关键,我们可以将其重命名,这里我将其命名为MainService,如下图:

     

    3 MainService的后台代码中会自动创建一些方法,包括服务的启动和停止方法等,如下图:

     

    4 将服务启动时要执行的操作放在OnStart方法中,服务停止时要执行的操作放在OnStop方法中

    5 MainService.cs设计器中,单击邮件,选择选择添加安装程序,便会生成一个ProjectInstaller.cs的文件,如图所示:

     

    6 设置ProjectInstaller.cs的属性,切换到属性设置界面

    1 选择serviceInstaller1,并设置相应属性如下图所示:

     

    其中:Description属性用于设置服务安装之后再服务界面上显示的描述信息

          DisplayName属性用于设置服务安装之后再服务界面上显示的服务名称;

          ServiceName属性用于设置服务的名称,此名称必须与ServiceBase类的ServiceName属性设置的名称一致,该名称用于系统标识此服务,可以理解成DisplayName为ServiceName的别名;

          StartType属性用于设置服务的启动方式。

    2 选择serviceProcessInster1,设置其属性如下:

     

    此处主要设置Account属性,该属性用来指示运行该服务时的账户类型,一般设置为LocalSystem

    7 到此步一个简单的windows服务就创建好了,编译程序会生成一个EmailService.exe的可执行文件,接下来便是安装服务了。

    二、Windows服务的安装

    命令安装

    -------------------------------------此处为自己命令安装成功------------------------------------------------------------------

    管理员身份运行cmd

    服务 安装:sc create 服务名 binpath= “D: 服务exe文件地址需要安装的服务.exe”  displayname= "服务显示名称" start= "auto"

    服务删除 sc delete 服务名

    给服务添加描述: sc description 服务名 “具体服务名称”

    ------------------------------------以下方法未试-------------------------------------------------------------------

    Windows服务的安装有多种方式,比如可以再cmd下调用命令来安装,也可以写一个安装程序来安装,此处介绍使用bat批处理来安装。

    1 安装Windows服务需要用到InstallUtil.exe程序,该程序位于:

    C:WindowsMicrosoft.NETFramework64v4.0.30319 .NET4.0

    C:WindowsMicrosoft.NETFramework64v2.0.50727 .NET2.0

    2 我们可以再批处理命令中直接调用以上目录中的InstallUtil.exe程序,也可以将该程序拷贝到应用程序的目录下,此处我选择奖该程序拷贝到应用程序的目录下,同时将批处理文件也创建在应用程序的的目录下,如下图所示:

    3 注册服务的批处理命令如下所示:

    %~dp0InstallUtil.exe %~dp0EmailService.exe

    Net Start EmailService  --这里是安装完成之后启动服务

    sc config EmailService start= auto –这里是将服务设置为自动启动

    pause

    其中%~dp0表示批处理所在的目录

    4 注销服务的批处理命令如下所示:

    %~dp0InstallUtil.exe /u %~dp0EmailService.exe

    pause

    5 启动服务的批处理命令如下所示:

    net start EmailService

    pause

    6 停止服务的批处理命令如下所示:

    net stop EmailService

    pause

    7 当我们运行注册服务批处理命令之后便会进行服务安装,如果安装成功,我们在服务界面将看到该服务,如下图所示:

    8 安装服务时的注意事项

    1 安装程序InstallUtil.exe的版本必须于创建Windows服务的.NET版本一致;

    2 如果是Win7以上版本的系统,在运行批处理命令时,应以管理员身份运行;

    3 如果是Win7以上版本的系统,应特别注意安装程序和应用程序的路径,以便能够正确的写批处理命令。

     

     

     

     

  • 相关阅读:
    swfupload多文件上传[附源码]
    C#函数式程序设计之泛型(下)
    ASP.NET MVC实现POST方式的Redirect
    使用Windows Azure的VM安装和配置CDH搭建Hadoop集群
    Asp.Net MVC 上传图片到数据库
    ASP.NET Web API标准的“管道式”设计
    如何捕获和分析 JavaScript Error
    快学Scala习题解答—第一章 基础
    职场人生
    合伙人的重要性超过了商业模式和行业选择(转)
  • 原文地址:https://www.cnblogs.com/i-mengli/p/9525944.html
Copyright © 2020-2023  润新知