zoukankan      html  css  js  c++  java
  • Windows服务搭建(C#)

    创建windows服务流程

    1.C#工程中新建windows服务

    2.Service1改名-想要的名字

    3.在视图中新建安装程序

    4.右键serviceInsraller1,选择属性,将ServiceName的值改为ServiceTest,还可以再Description中写上对服务的描述。

    5.右键serviceProcessInsraller1,选择属性,将Account的值改为LocalSystem。

    (服务包括的函数)

    Windows服务并不像一般应用程序那样直接运行,需要其它的东西。这里由几个简单的批处理程序来控制安装,卸载,开始,停止。

    Install.bat 这个批处理第一次用遇到了很多问题,改了很久。发现是相对路径居然无效,就是直接用下面这个代码不行。

    C:WINDOWSMicrosoft.NETFrameworkv4.0.30319installutil WindowsServiceLog.exe
    这个居然会错,就算批处理在Debug调试目录下,后来试了下绝对路径居然又正常了,百思不得其解。想到如果要移植就不能用绝对路径,那么就用代码来获取绝对路径,于是就改成这样了。
    @echo off
    @echo 安装WindowService中,请等待。。。
    C:WINDOWSMicrosoft.NETFrameworkv4.0.30319installutil %~dp0WindowsServiceLog.exe  
    @echo 安装成功! 
    @echo 正在启动服务。。。
    Net Start ServiceTest
    sc config ServiceTest Start= auto 
    @echo 服务启动成功!
    pause 

    卸载就简单多了,也是和上面同样的道理。

    %SystemRoot%Microsoft.NETFrameworkv4.0.30319installutil.exe /u %~dp0WindowsServiceLog.exe
    pause

    服务的开启和关闭。其实安装服务的时候就用代码开启了。

    一直不太清楚sc和Nat命令区别,对服务的开关来说,反正都可以用。

    Net Start ServiceTest

    Net Stop ServiceTest

    sc Start ServiceTest

    sc Stop ServiceTest

    删除服务

    sc delete ServiceTest

    查看服务状态

    sc query ServiceTest

    卸载服务中居然遇到了一个奇怪的问题,“服务已标记删除!” ,没法卸载,没法启动,没法重新安装,我还去了注册表找到这个服务删除结果还是没用。。。结果居然是------》

    -----》需要先关闭计算机管理-服务 这个窗口。(撞墙)

    控制服务的时候运行*.bat,如果不以管理员身份运行就会出错。为此特别增加了一个对管理员权限的判断,如果不是管理员则提示。下面以安装服务为例,其它类似

     1 @ECHO OFF
     2 fsutil >nul 
     3 if errorlevel 1 (goto error )
     4 @echo 安装WindowService中,请等待。。。
     5 C:WINDOWSMicrosoft.NETFrameworkv4.0.30319installutil %~dp0WindowsServiceLog.exe  
     6 pause
     7 exit
     8 :error
     9 echo 请右键以管理员身份运行此程序!
    10 pause
    11 exit

    (待完成。。)

  • 相关阅读:
    angularjs 学习教程
    Mac下的开发工具
    国双前端笔试题-2016年07月08日
    css3 box-sizing属性
    .NET中制做对象的副本(一)
    Nginx限制IP访问及获取客户端realip实战
    Saltstack实战之无master和多master
    Saltstack之job管理和runner
    Python之异常处理
    Python内置函数之isinstance,issubclass
  • 原文地址:https://www.cnblogs.com/Iamsorry/p/4898087.html
Copyright © 2011-2022 走看看