收藏 分销(赏)

C#Windows系统服务管理源代码.docx

上传人:pc****0 文档编号:8843209 上传时间:2025-03-04 格式:DOCX 页数:26 大小:94.74KB
下载 相关 举报
C#Windows系统服务管理源代码.docx_第1页
第1页 / 共26页
C#Windows系统服务管理源代码.docx_第2页
第2页 / 共26页
点击查看更多>>
资源描述
C#Windows系统服务管理源代码 1.实现的界面 2.要导入的命名空间 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using Microsoft.Win32; using System.IO; using System.ServiceProcess; using System.Diagnostics; 3.刷新服务功能的实现 private void 刷新ToolStripMenuItem_Click(object sender, EventArgs e) { lstserver.Items.Clear(); #region 刷新服务 watch = System.ServiceProcess.ServiceController.GetServices(); foreach (ServiceController temp in watch) { try { string servepath = ""; ListViewItem lv = new ListViewItem(temp.DisplayName.ToString()); lv.SubItems.Add(temp.ServiceName.ToString()); #region 1.服务状态 if (temp.Status.ToString() == "Stopped") { lv.SubItems.Add("已停止"); } else if (temp.Status.ToString() == "Running") { lv.SubItems.Add("正在运行"); } else { lv.SubItems.Add("已暂停"); } #endregion #region 2.服务启动类型 try { RegistryKey hklmrun1 = Registry.LocalMachine; RegistryKey hklmrun2 = hklmrun1.CreateSubKey(@"system\currentcontrolset\services\" + temp.ServiceName.ToString()); string regs = hklmrun2.GetValue("start").ToString(); if (regs == "3") { lv.SubItems.Add("手动"); } else if (regs == "4") { lv.SubItems.Add("已禁用"); } else if (regs == "2" ) { lv.SubItems.Add("自动"); } else if (regs == "0") { lv.SubItems.Add("自动"); } else { lv.SubItems.Add("未知"); } } catch { } #endregion #region 3.服务描述 try { RegistryKey hklmrun1 = Registry.LocalMachine; RegistryKey hklmrun2= hklmrun1.CreateSubKey(@"system\currentcontrolset\services\" + temp.ServiceName.ToString()); string regs = hklmrun2.GetValue("Description").ToString(); lv.SubItems.Add(regs); } catch { lv.SubItems.Add(""); } #endregion #region 4.服务路径 try { RegistryKey hklmrun1 = Registry.LocalMachine; RegistryKey hklmrun2= hklmrun1.CreateSubKey(@"system\currentcontrolset\services\" + temp.ServiceName.ToString()); servepath = hklmrun2.GetValue("ImagePath").ToString(); lv.SubItems.Add(servepath); } catch { lv.SubItems.Add(""); } #endregion #region 5.服务厂商 string fileinfo = ""; try { FileVersionInfo finfo = FileVersionInfo.GetVersionInfo(@servepath); fileinfo = finfo.CompanyName; lv.SubItems.Add(fileinfo); } catch { lv.SubItems.Add(""); } if (fileinfo != "Microsoft Corporation"&&fileinfo !="") { lv.ForeColor = Color.Blue; } #endregion lstserver.Items.Add(lv); } catch { } } #endregion lblservecount.Text = "当前服务:" + lstserver.Items.Count.ToString() + "项"; } 4.显示已启动服务功能的实现 private void 显示已启动服务ToolStripMenuItem_Click(object sender, EventArgs e) { lstserver.Items.Clear(); #region 刷新服务 watch = System.ServiceProcess.ServiceController.GetServices(); foreach (ServiceController temp in watch) { #region foreach try { string serverrunning = ""; serverrunning = temp.Status.ToString(); if (serverrunning == "Running") { try { string servepath = ""; ListViewItem lv=new ListViewItem(temp.DisplayName.ToString()); lv.SubItems.Add(temp.ServiceName.ToString()); #region 1.服务状态 if (temp.Status.ToString() == "Stopped") { lv.SubItems.Add("已停止"); } else if (temp.Status.ToString() == "Running") { lv.SubItems.Add("正在运行"); } else { lv.SubItems.Add("已暂停"); } #endregion #region 2.服务启动类型 try { RegistryKey hklmrun1 = Registry.LocalMachine; RegistryKey hklmrun2 = hklmrun1.CreateSubKey(@"system\currentcontrolset\services\" + temp.ServiceName.ToString()); string regs = hklmrun2.GetValue("start").ToString(); if (regs == "3") { lv.SubItems.Add("手动"); } else if (regs == "4") { lv.SubItems.Add("已禁用"); } else if (regs == "2" || regs == "0") { lv.SubItems.Add("自动"); } else { lv.SubItems.Add("未知"); } } catch { } #endregion #region 3.服务描述 try { RegistryKey hklmrun1 = Registry.LocalMachine; RegistryKey hklmrun2 = hklmrun1.CreateSubKey(@"system\currentcontrolset\services\" + temp.ServiceName.ToString()); string regs = hklmrun2.GetValue("Description").ToString(); lv.SubItems.Add(regs); } catch { lv.SubItems.Add(""); } #endregion #region 4.服务路径 try { RegistryKey hklmrun1 = Registry.LocalMachine; RegistryKey hklmrun2 = hklmrun1.CreateSubKey(@"system\currentcontrolset\services\" + temp.ServiceName.ToString()); servepath = hklmrun2.GetValue("ImagePath").ToString(); lv.SubItems.Add(servepath); } catch { lv.SubItems.Add(""); } #endregion #region 5.服务厂商 string fileinfo = ""; try { FileVersionInfo finfo = FileVersionInfo.GetVersionInfo(@servepath); fileinfo = finfo.CompanyName; lv.SubItems.Add(fileinfo); } catch { lv.SubItems.Add(""); } if (fileinfo != "Microsoft Corporation" && fileinfo != "") { lv.ForeColor = Color.Blue; } #endregion lstserver.Items.Add(lv); } catch { } } } catch { } #endregion } #endregion lblservecount.Text = "当前服务:" + lstserver.Items.Count.ToString() + "项"; } 5.显示未启动服务功能的实现 private void 显示未启动服务ToolStripMenuItem_Click(object sender, EventArgs e) { lstserver.Items.Clear(); #region 刷新服务 watch = System.ServiceProcess.ServiceController.GetServices(); foreach (ServiceController temp in watch) { #region foreach try { string serverrunning = ""; serverrunning = temp.Status.ToString(); if (serverrunning != "Running") { try { string servepath = ""; ListViewItem lv = new ListViewItem(temp.DisplayName.ToString()); lv.SubItems.Add(temp.ServiceName.ToString()); #region 1.服务状态 if (temp.Status.ToString() == "Stopped") { lv.SubItems.Add("已停止"); } else if (temp.Status.ToString() == "Running") { lv.SubItems.Add("正在运行"); } else { lv.SubItems.Add("已暂停"); } #endregion #region 2.服务启动类型 try { RegistryKey hklmrun1 = Registry.LocalMachine; RegistryKey hklmrun2 = hklmrun1.CreateSubKey(@"system\currentcontrolset\services\" + temp.ServiceName.ToString()); string regs = hklmrun2.GetValue("start").ToString(); if (regs == "3") { lv.SubItems.Add("手动"); } else if (regs == "4") { lv.SubItems.Add("已禁用"); } else if (regs == "2" || regs == "0") { lv.SubItems.Add("自动"); } else { lv.SubItems.Add("未知"); } } catch { } #endregion #region 3.服务描述 try { RegistryKey hklmrun1 = Registry.LocalMachine; RegistryKey hklmrun2 = hklmrun1.CreateSubKey(@"system\currentcontrolset\services\" + temp.ServiceName.ToString()); string regs = hklmrun2.GetValue("Description").ToString(); lv.SubItems.Add(regs); } catch { lv.SubItems.Add(""); } #endregion #region 4.服务路径 try { RegistryKey hklmrun1 = Registry.LocalMachine; RegistryKey hklmrun2 = hklmrun1.CreateSubKey(@"system\currentcontrolset\services\" + temp.ServiceName.ToString()); servepath = hklmrun2.GetValue("ImagePath").ToString(); lv.SubItems.Add(servepath); } catch { lv.SubItems.Add(""); } #endregion #region 5.服务厂商 string fileinfo = ""; try { FileVersionInfo finfo = FileVersionInfo.GetVersionInfo(@servepath); fileinfo = finfo.CompanyName; lv.SubItems.Add(fileinfo); } catch { lv.SubItems.Add(""); } if (fileinfo != "Microsoft Corporation" && fileinfo != "") { lv.ForeColor = Color.Blue;
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服