zoukankan      html  css  js  c++  java
  • C#代码-安装Windows服务

    C#代码安装Windows服务

    using System;
    using System.Collections.Generic;
    using System.ServiceProcess;
    using System.Configuration.Install;

    static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main(string[] args)
        {
            // 运行服务
            if (args.Length == 0)
            {
                ServiceBase[] ServicesToRun;
                ServicesToRun = new ServiceBase[] { new MyService1() };
                ServiceBase.Run(ServicesToRun);
            }
            // 安装服务
            else if (args[0].ToLower() == "/i" || args[0].ToLower() == "-i")
            {
                try
                {
                    string[] cmdline = { };
                    string serviceFileName = System.Reflection.Assembly.GetExecutingAssembly().Location;

                    TransactedInstaller transactedInstaller = new TransactedInstaller();
                    AssemblyInstaller assemblyInstaller = new AssemblyInstaller(serviceFileName, cmdline);
                    transactedInstaller.Installers.Add(assemblyInstaller);
                    transactedInstaller.Install(new System.Collections.Hashtable());
                }
                catch (Exception ex)
                {
                    string msg = ex.Message;
                }
            }
            // 删除服务
            else if (args[0].ToLower() == "/u" || args[0].ToLower() == "-u")
            {
                try
                {
                    string[] cmdline = { };
                    string serviceFileName = System.Reflection.Assembly.GetExecutingAssembly().Location;

                    TransactedInstaller transactedInstaller = new TransactedInstaller();
                    AssemblyInstaller assemblyInstaller = new AssemblyInstaller(serviceFileName, cmdline);
                    transactedInstaller.Installers.Add(assemblyInstaller);
                    transactedInstaller.Uninstall(null);
                }
                catch (Exception ex)
                {
                    string msg = ex.Message;
                }
            }
        }
    }

  • 相关阅读:
    QPS/TPS的预估
    tornado多进程模式不同进程写不同日志
    [python]pypy优化python性能
    [linux]查看进程占用内存
    [linux]杀死同一个应用的所有进程
    [LINUX] 快速回收连接
    jdbc批量写入
    Android 手机卫士--参照文档编写选择器
    Android 手机卫士--导航界面1的布局编写
    Android 手机卫士--设置界面&功能列表界面跳转逻辑处理
  • 原文地址:https://www.cnblogs.com/tanshupeng/p/3899919.html
Copyright © 2011-2022 走看看