• VS2010 创建WindowsService服务


    1.新建一个Windows 服务

    2.添加Installer

    这一步很重要,在处理完你的业务逻辑后需要添加一个Installer才能是你的Windows服务被安装。

    在VS中添加Installer

    右键你的Service服务,选择View Designer

    再在View Designer视图中右键Add Installer

    这样Installer就添加好了。

    3.设置服务参数

    在添加Installer时会自动生成一个ProjectInstaller.cs,在这个文件中有个InitializeComponent方法,如下

    1. private void InitializeComponent()  
    2.   
    3.   {  
    4.   
    5.   this.serviceProcessInstaller1 = new System.ServiceProcess.ServiceProcessInstaller();  
    6.   
    7.   this.serviceInstaller1 = new System.ServiceProcess.ServiceInstaller();  
    8.   
    9.   //  
    10.   
    11.   // serviceProcessInstaller1  
    12.   
    13.   //  
    14.   
    15.   this.serviceProcessInstaller1.Password = null;  
    16.   
    17.   this.serviceProcessInstaller1.Username = null;  
    18.   
    19.   //  
    20.   
    21.   // serviceInstaller1  
    22.   
    23.   //  
    24.   
    25.   this.serviceInstaller1.ServiceName = "Service1";  
    26.   
    27.   //  
    28.   
    29.   // ProjectInstaller  
    30.   
    31.   //  
    32.   
    33.   this.Installers.AddRange(new System.Configuration.Install.Installer[] {  
    34.   
    35.   this.serviceProcessInstaller1,  
    36.   
    37.   this.serviceInstaller1});  
    38.   
    39.   }  
    40.   
    41.   
    42.   
    43.   this.serviceProcessInstaller1.Password = null;  
    44.   
    45.   this.serviceProcessInstaller1.Username = null;  


     


      为设置服务的登陆账号密码,如果不想设置用户名密码也可以采用本地系统帐户运行服务,代码如下:

      



      this.serviceProcessInstaller1.Account = System.ServiceProcess.ServiceAccount.LocalSystem;


      其他设置也可在此完成。
    4.安装和卸载Windows服务

    制作完成的Windows服务发布后是一个exe文件,要想在使用的机器上启用这个服务,我们要用微软提供的工具Installutil工具,利用命令行安装和卸载此服务。

    installutil工具在目录:系统盘:WINDOWSMicrosoft.NETFrameworkv4.0.30319下,运行cmd,输入

      C:WINDOWSMicrosoft.NETFrameworkv4.0.30319installutil xxxx.exe 回车,即可完成windows服务的安装。

      卸载则为输入 C:WINDOWSMicrosoft.NETFrameworkv4.0.30319installutil /u xxxx.exe 回车。

    5.安装之后运行windowservice服务时有时可能会遇到service会自动down掉得情况,这种情况有肯能是编译时的exe文件是x64或者x86的情况,所以我们用mubuild手动build成anycpu的exe服务,可能会得到解决。

  • 相关阅读:
    洛谷P4587 [FJOI2016]神秘数(主席树)
    洛谷P4609 [FJOI2016]建筑师(第一类斯特林数+组合数)
    Bzoj4016/洛谷P2993 [FJOI2014] 最短路径树问题(最短路径问题+长链剖分/点分治)
    Bzoj1486/洛谷P3199 最小圈(0/1分数规划+spfa)/(动态规划+结论)
    Bzoj4753/洛谷P4432 [JSOI2016]最佳团体(0/1分数规划+树形DP)
    Bzoj3197/洛谷3296 [SDOI2013]刺客信条assassin(树的重心+树Hash+树形DP+KM)
    关于二分图的完美匹配问题
    Bzoj3837 [Pa2013]Filary(随机化)
    Bzoj3566/洛谷P4284 [SHOI2014]概率充电器(概率dp)
    杜教筛学习笔记
  • 原文地址:https://www.cnblogs.com/sandea/p/4054868.html
Copyright © 2020-2023  润新知