zoukankan      html  css  js  c++  java
  • 用 vs2013 创建 windows service 程序

    windows services 是运行在后台的服务程序,可以用 vs2013 来创建,创建的步骤如下:

    1.打开 vs2013 , Files -->New Project --> windows-->windows service  在本示例中的名称为: WindowsServiceDemon 如下图所示 

    2.创建好的项目的解决方案如下:

    Program.cs 是程序的入口处,里面包含程序的入口方法,Servicel.cs 是服务类文件,里面包含服务的内容,所有的逻辑都在这里,Services.cs 包含两部分:一部分是Designer 可视化设计界面,可以在这里添加各种组件,另一部分是代码文件,里面主要写逻辑,默认包含3个方法:OnStart、OnStop 和构造函数,还可以添加 OnPause 和 OnContinue 方法,在构造函数里,设置服务的名称:

    base.ServiceName="wisdomhu";

    Services1.cs 完整的代码如下:

     1 using System;
     2 using System.Collections.Generic;
     3 using System.ComponentModel;
     4 using System.Data;
     5 using System.Diagnostics;
     6 using System.Linq;
     7 using System.ServiceProcess;
     8 using System.Text;
     9 using System.Threading.Tasks;
    10 
    11 namespace WindowsServiceDemon
    12 {
    13     public partial class Service1 : ServiceBase
    14     {
    15         public Service1()
    16         {
    17             InitializeComponent(); // 构造函数
    18             base.ServiceName = "wisdomhu";//设置服务名称,与后面的安装服务名称要一致
    19 
    20         }
    21 
    22         protected override void OnStart(string[] args)
    23         {
    24             //TODO 服务启动时的相关逻辑
    25         }
    26 
    27         protected override void OnStop()
    28         {
    29             //TODO 服务停止时的相关逻辑
    30         }
    31     }
    32 }
    Services.cs

    3.双击 Services1.cs文件,进入设计页面,在空白处单击鼠标右键--> Add Installer (添加安装器)

    添加完后,页面上会显示两个标签,

    单击选中 serviceProcessInstaller1,鼠标右键 -->Properties (显示属性) 在右侧的属性栏中,修改属性值,将Account 属性设置成 localSystem,这是服务的类型

    4. 按照上面的步骤,设置 serviceInstaller1 的属性,其中 DelayedAutoStart 表示是否延迟启动,Descirption 表示:服务的说明文字 ,DisplayName 表示: 服务的显示名称,ServicesDependOn 表示:服务所依赖的其它服务项,StartType 表示: 服务的启动类型: 自动、手动、禁止, Partent表示:服务所依赖的父服务 , ServicesName 表示: 服务的名称,服务的名称要与在第二步代码中设置的服务的名称一致。

    5.对项目进行编译,并持备 bin-->debug 下的所有文件 到 自己指定的文件夹中,这里的文件夹名称是: WindowsServicesDemon

    6. 在 WindowsServicesDemon 文件夹中,分别添加两个文件: Installer.bat 和 UnInstaller.bat (可通过文本编辑器来添加)它们分别表示:服务的安装和服务的卸载,其中的内容分别是:

    %~dp0InstallUtil.exe %~dp0WindowsServiceDemon.exe
    pause
    %~dp0InstallUtil /u %~dp0WindowsServiceDemon.exe
    pause

    注: 开头一定要留 %~dp0  符号,表示将目录更改为当前目录,如果不加,可能会出错。

    7. 从 C:WindowsMicrosoft.NETFrameworkv4.0.30319 找到 InstallUtil.exe 和 InstallUtil 文件,并把这两个文件拷备到 第 5步所创建的文件夹中,这里是 WindowsServicesDemon ,然后 选 中 Installer.bat 文件,以管理员的方式运行,如果一切正常,将会看到这样的结果:

    服务已经成功安装,打开 服务,将会看到,刚才安装的 wisdomhu 服务

    若要卸载服务时,只要以管理员的方式运行 UnInstaller.bat 就可以了。

  • 相关阅读:
    mysql常用操作语句
    开启端口命令
    在linux终端远程登陆linux服务器
    CentOS个人目录下中文路径转英文路径
    安装MariaDB和简单配置
    centos 7.1 apache 源码编译安装
    PHP页面跳转
    一亿个不重复的随机数算法
    HTML中添加背景
    SQL语法
  • 原文地址:https://www.cnblogs.com/wisdo/p/4890419.html
Copyright © 2011-2022 走看看