zoukankan      html  css  js  c++  java
  • C#代码安装、卸载、监控Windows服务

    C#编写Windows服务之后都不可避免的需要安装,卸载等操作。而传统的方式就是通过DOS界面去编写命令,这样的操作方式无疑会增加软件实施人员的工作量,下面就介绍一种简单、高效、快速方便的方式。
    1.安装Windows服务(需引用程序集 System.Configuration.Install)

    using (AssemblyInstaller assemblyInstaller = new AssemblyInstaller())
    {
        assemblyInstaller.UseNewContext = true;
        //获得当前运行程序的路径,如:
        //assemblyInstaller.Path = Assembly.GetExecutingAssembly().Location;
        assemblyInstaller.Path = @"E:ProjectStorageSystem	runk2.0MultiTaskServiceinReleaseMultiTaskService.exe";
        assemblyInstaller.Install(null);
        assemblyInstaller.Commit(null);
    }

    2.卸载Windows服务(需引用程序集 System.Configuration.Install)

    using (AssemblyInstaller assemblyInstaller = new AssemblyInstaller())
    {
        assemblyInstaller.UseNewContext = true;
        //获得当前运行程序的路径,如:
        //assemblyInstaller.Path = Assembly.GetExecutingAssembly().Location;
        assemblyInstaller.Path = @"E:ProjectStorageSystem	runk2.0MultiTaskServiceinReleaseMultiTaskService.exe";
        assemblyInstaller.Uninstall(null);
    }

    3.检测并操作windows服务(需引用程序集 System.ServiceProcess)

    ServiceController[] services = ServiceController.GetServices();
    foreach (var item in services)
    {
        if (item.ServiceName == "MultiTaskService")
        {
            Console.WriteLine("服务名:" + item.ServiceName + ",状态:" + item.Status);
            //此处可以开始服务,停止服务等
            //item.Start();
            //item.Stop();
        }
    }

    涛哥理解:有了上面几段代码,我们就可以自己编写一个Windows应用程序来管理我们的服务,为软件实施人员提供非常大的帮助。

  • 相关阅读:
    第四章JAVA EE基础知识
    第二章代码审计环境搭建
    第三章代码审计辅助工具简介
    python json.dumps 中文需要注意的事项
    multiprocessing 使用实践
    Python中*args和**kwargs的使用实践
    python 继承学习记录
    关于vue-element-admin启动项目遇到的一些问题
    @RequestParam
    前端菜单点击切换样式,菜单控制iframe
  • 原文地址:https://www.cnblogs.com/duanjt/p/5649889.html
Copyright © 2011-2022 走看看