0

我想知道如何使用 c# 停止挂起服务,就像我在 cmd中所做的那样using sc queryex servicename来获取 pid 并终止taskkill /pid pidnumber /f挂起服务......

我已经阅读了使用 taskkill 停止 Windows 服务,但这并没有给我一个解决方案。

我想要这样的东西:

Process.GetProcessesByName("aServiceName").Kill();

哪个不起作用...

4

1 回答 1

0

使用PsKill。它是 sysinternals 生产的一个 exec 实用程序。您可以在命令行模式和编程模式下使用它。如果您想以编程方式执行此操作,我建议创建一个实用程序类,该类具有一个采用服务 ID 的方法,创建一个进程,使用 C# 中的Process类,将进程附加到pskill.exe,将参数传递给 pskill并使用 start 方法启动该过程。这是一个示例:

public static void KillProcess(int _servicePid)
{
    System.Diagnostics.Process.Start("C:\pstools\pskill.exe", _servicePid);
}

PsKill 下载链接:http ://technet.microsoft.com/en-us/sysinternals/bb896683.aspx

于 2014-11-21T13:29:30.527 回答