zoukankan      html  css  js  c++  java
  • 创建一个简单WindowsService

    创建一个简单WindowsService

    1.创建一个项目:

    选择windows 服务 名称为ServiceTest

     

    2.重命名为ServiceTest

     

    弹出下列弹框时选择是

     

    3.添加安装程序:

    双击

     

    在设计窗口对应标签下右击 选择添加安装程序

     

    右击 serviceInstaller1 选择属性

     

    ServiceName修改为ServiceTest

     

    右击 serviceProcessInstaller1 选择属性

     

    Account修改为LocalService

     

    4.编写代码 右击 ServiceTest.cs文件

     

    选择查看代码

    添加代码如下:

    using System.ServiceProcess;
    
    namespace ServiceTest
    {
        public partial class ServiceTest : ServiceBase
        {
            public ServiceTest()
            {
                InitializeComponent();
            }
            /// <summary>
            /// 服务启动时
            /// </summary>
            /// <param name="args"></param>
            protected override void OnStart(string[] args)
            {
                using (System.IO.StreamWriter sw = new System.IO.StreamWriter("E://ServiceLog.TXT"))
                {
                    sw.WriteLine("{0}ServiceTest已经启动", System.DateTime.Now.ToString("yyyy-MM-dd:HH:mm:ss"));
                }
            }
            /// <summary>
            /// 服务停止时
            /// </summary>
            protected override void OnStop()
            {
                using (System.IO.StreamWriter sw = new System.IO.StreamWriter("E://ServiceLog.TxT"))
                {
                    sw.WriteLine("{0}ServiceTest已经停止", System.DateTime.Now.ToString("yyyy-MM-dd:HH:mm:ss"));
                }
            }
        }
        
    }

     添加安装批处理文件 Install.bat 到项目中 内容如下(使用记事本的话,请保存完ANSI格式,否则部分转义符号可能不被识别)

    %SystemRoot%Microsoft.NETFrameworkv4.0.30319installutil.exe %~dp0inDebugServiceTest.exe
    Net Start ServiceTest
    sc config ServiceTest start= auto
    pause

    这个批处理的意思是 调用%SystemRoot%Microsoft.NETFrameworkv4.0.30319  批处理安装程序 installutil.exe 安装批处理文件所在目录下的binDebugServiceTest.exe 程序

    启动服务ServiceTest

    并设置服务ServiceTest 为自动

    pause 是让批处理执行完之后暂停已查看结果

    添加卸载处理程序 UnInstall.bat 到项目中 内容如下(使用记事本的话,请保存完ANSI格式,否则部分转义符号可能不被识别)

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

    这个批处理的意思是 调用%SystemRoot%Microsoft.NETFrameworkv4.0.30319  批处理安装程序 installutil.exe 卸载批处理文件所在目录下的binDebugServiceTest.exe 程序

    pause 是让批处理执行完之后暂停已查看结果

    整个目录如下:

    生成一下整个项目 先运行Install.bat

    服务已经启动成功了,查看日志

    如果报错的话,请以管理员权限运行脚本

    如果出现 服务无法启动 服务没有报告任何错误

    多半是程序有问题,可以检查windows事件查看器

  • 相关阅读:
    week9-东东学打牌
    week9-咕咕东的目录管理器
    CSP-M2-C-咕咕东的奇妙序列
    CSP-M2-B
    P1084 疫情控制
    P2447 [SDOI2010]外星千足虫
    P4035 [JSOI2008]球形空间产生器
    P3389 【模板】高斯消元法
    P4051 [JSOI2007]字符加密
    P6114 【模板】Lyndon 分解
  • 原文地址:https://www.cnblogs.com/luoyeluoy/p/8177209.html
Copyright © 2011-2022 走看看