用C#代码来安装、卸载、启动、关闭服务

时间:2024-12-31 14:34:14

/// <summary>
用C#代码来安装、卸载、启动、关闭服务        /// 启动服务
用C#代码来安装、卸载、启动、关闭服务         /// </summary>
用C#代码来安装、卸载、启动、关闭服务        /// <param name="sender"></param>
用C#代码来安装、卸载、启动、关闭服务        /// <param name="e"></param>
用C#代码来安装、卸载、启动、关闭服务        private void button1_Click(object sender, EventArgs e)
用C#代码来安装、卸载、启动、关闭服务        {
用C#代码来安装、卸载、启动、关闭服务            ServiceController sc = new ServiceController("WindowsService1");
用C#代码来安装、卸载、启动、关闭服务            if (sc.Status.Equals(ServiceControllerStatus.Stopped))
用C#代码来安装、卸载、启动、关闭服务            {
用C#代码来安装、卸载、启动、关闭服务                sc.Start();
用C#代码来安装、卸载、启动、关闭服务            }
用C#代码来安装、卸载、启动、关闭服务        }
用C#代码来安装、卸载、启动、关闭服务        /// <summary>
用C#代码来安装、卸载、启动、关闭服务        /// 停止服务
用C#代码来安装、卸载、启动、关闭服务        /// </summary>
用C#代码来安装、卸载、启动、关闭服务        /// <param name="sender"></param>
用C#代码来安装、卸载、启动、关闭服务        /// <param name="e"></param>
用C#代码来安装、卸载、启动、关闭服务        private void button2_Click(object sender, EventArgs e)
用C#代码来安装、卸载、启动、关闭服务        {
用C#代码来安装、卸载、启动、关闭服务            ServiceController sc = new ServiceController("MSSQLSERVER");
用C#代码来安装、卸载、启动、关闭服务            if (!sc.Status.Equals(ServiceControllerStatus.Stopped))
用C#代码来安装、卸载、启动、关闭服务            {
用C#代码来安装、卸载、启动、关闭服务                sc.Stop();
用C#代码来安装、卸载、启动、关闭服务            }
用C#代码来安装、卸载、启动、关闭服务        }
用C#代码来安装、卸载、启动、关闭服务        /// <summary>
用C#代码来安装、卸载、启动、关闭服务        /// 安装服务
用C#代码来安装、卸载、启动、关闭服务        /// </summary>
用C#代码来安装、卸载、启动、关闭服务        /// <param name="sender"></param>
用C#代码来安装、卸载、启动、关闭服务        /// <param name="e"></param>
用C#代码来安装、卸载、启动、关闭服务        private void button3_Click(object sender, EventArgs e)
用C#代码来安装、卸载、启动、关闭服务        {
用C#代码来安装、卸载、启动、关闭服务            if (!isServiceIsExisted("Service1"))
用C#代码来安装、卸载、启动、关闭服务            {                
用C#代码来安装、卸载、启动、关闭服务                string location = System.Reflection.Assembly.GetExecutingAssembly().Location;
用C#代码来安装、卸载、启动、关闭服务                string serviceFileName = location.Substring(0, location.LastIndexOf('//') + 1) + "WindowsService1.exe";
用C#代码来安装、卸载、启动、关闭服务
用C#代码来安装、卸载、启动、关闭服务                InstallmyService(null, serviceFileName);
用C#代码来安装、卸载、启动、关闭服务            }
用C#代码来安装、卸载、启动、关闭服务            else
用C#代码来安装、卸载、启动、关闭服务            {
用C#代码来安装、卸载、启动、关闭服务                MessageBox.Show("系统已经安装了此服务!");
用C#代码来安装、卸载、启动、关闭服务            }
用C#代码来安装、卸载、启动、关闭服务        }
用C#代码来安装、卸载、启动、关闭服务        /// <summary>
用C#代码来安装、卸载、启动、关闭服务        /// 卸载服务
用C#代码来安装、卸载、启动、关闭服务        /// </summary>
用C#代码来安装、卸载、启动、关闭服务        /// <param name="sender"></param>
用C#代码来安装、卸载、启动、关闭服务        /// <param name="e"></param>
用C#代码来安装、卸载、启动、关闭服务        private void button4_Click(object sender, EventArgs e)
用C#代码来安装、卸载、启动、关闭服务        {
用C#代码来安装、卸载、启动、关闭服务            if (isServiceIsExisted("Service1"))
用C#代码来安装、卸载、启动、关闭服务            {
用C#代码来安装、卸载、启动、关闭服务                string location = System.Reflection.Assembly.GetExecutingAssembly().Location;
用C#代码来安装、卸载、启动、关闭服务                string serviceFileName = location.Substring(0, location.LastIndexOf('//') + 1) + "WindowsService1.exe";
用C#代码来安装、卸载、启动、关闭服务                UnInstallmyService(serviceFileName);
用C#代码来安装、卸载、启动、关闭服务            }
用C#代码来安装、卸载、启动、关闭服务            else
用C#代码来安装、卸载、启动、关闭服务            {
用C#代码来安装、卸载、启动、关闭服务                MessageBox.Show("系统不存在此服务,不需要卸载!");
用C#代码来安装、卸载、启动、关闭服务            }
用C#代码来安装、卸载、启动、关闭服务        }
用C#代码来安装、卸载、启动、关闭服务
用C#代码来安装、卸载、启动、关闭服务
用C#代码来安装、卸载、启动、关闭服务        /// <summary>
用C#代码来安装、卸载、启动、关闭服务        /// 检查服务存在的存在性
用C#代码来安装、卸载、启动、关闭服务        /// </summary>
用C#代码来安装、卸载、启动、关闭服务        /// <param name=" NameService ">服务名</param>
用C#代码来安装、卸载、启动、关闭服务        /// <returns>存在返回 true,否则返回 false;</returns>
用C#代码来安装、卸载、启动、关闭服务        public static bool isServiceIsExisted(string NameService)
用C#代码来安装、卸载、启动、关闭服务        {
用C#代码来安装、卸载、启动、关闭服务            ServiceController[] services = ServiceController.GetServices();
用C#代码来安装、卸载、启动、关闭服务            foreach (ServiceController s in services)
用C#代码来安装、卸载、启动、关闭服务            {
用C#代码来安装、卸载、启动、关闭服务                if (s.ServiceName.ToLower() == NameService.ToLower())
用C#代码来安装、卸载、启动、关闭服务                {
用C#代码来安装、卸载、启动、关闭服务                    return true;
用C#代码来安装、卸载、启动、关闭服务                }
用C#代码来安装、卸载、启动、关闭服务            }
用C#代码来安装、卸载、启动、关闭服务            return false;
用C#代码来安装、卸载、启动、关闭服务        }
用C#代码来安装、卸载、启动、关闭服务        /// <summary>
用C#代码来安装、卸载、启动、关闭服务        /// 安装Windows服务
用C#代码来安装、卸载、启动、关闭服务        /// </summary>
用C#代码来安装、卸载、启动、关闭服务        /// <param name="stateSaver">集合</param>
用C#代码来安装、卸载、启动、关闭服务        /// <param name="filepath">程序文件路径</param>
用C#代码来安装、卸载、启动、关闭服务        public static void InstallmyService(IDictionary stateSaver, string filepath)
用C#代码来安装、卸载、启动、关闭服务        {
用C#代码来安装、卸载、启动、关闭服务            AssemblyInstaller AssemblyInstaller1 = new AssemblyInstaller();
用C#代码来安装、卸载、启动、关闭服务            AssemblyInstaller1.UseNewContext = true;
用C#代码来安装、卸载、启动、关闭服务            AssemblyInstaller1.Path = filepath;
用C#代码来安装、卸载、启动、关闭服务            AssemblyInstaller1.Install(stateSaver);
用C#代码来安装、卸载、启动、关闭服务            AssemblyInstaller1.Commit(stateSaver);
用C#代码来安装、卸载、启动、关闭服务            AssemblyInstaller1.Dispose();
用C#代码来安装、卸载、启动、关闭服务        }
用C#代码来安装、卸载、启动、关闭服务        /// <summary>
用C#代码来安装、卸载、启动、关闭服务        /// 卸载Windows服务
用C#代码来安装、卸载、启动、关闭服务        /// </summary>
用C#代码来安装、卸载、启动、关闭服务        /// <param name="filepath">程序文件路径</param>
用C#代码来安装、卸载、启动、关闭服务        public static void UnInstallmyService(string filepath)
用C#代码来安装、卸载、启动、关闭服务        {
用C#代码来安装、卸载、启动、关闭服务            AssemblyInstaller AssemblyInstaller1 = new AssemblyInstaller();
用C#代码来安装、卸载、启动、关闭服务            AssemblyInstaller1.UseNewContext = true;
用C#代码来安装、卸载、启动、关闭服务            AssemblyInstaller1.Path = filepath;
用C#代码来安装、卸载、启动、关闭服务            AssemblyInstaller1.Uninstall(null);
用C#代码来安装、卸载、启动、关闭服务            AssemblyInstaller1.Dispose();
用C#代码来安装、卸载、启动、关闭服务        }