2

我是否认为如果一个程序以用户身份运行,并且该程序试图杀死由同一用户启动的另一个进程,这会成功吗?并且用户需要在管理员组中才能杀死任何其他进程(包括 SYSTEM 等)?

我错过了什么吗?我错/对了吗?

4

1 回答 1

3

这些文章Process.Kill() 的权限提示 13:使用 C# 杀死进程,从本地到远程我相信这将有助于测试您的假设。

** 编辑 **

这些文章中的重要信息如下(以防链接失效):

using System.Management;
using System.Management.Instrumentation;

ManagementScope scope = new ManagementScope("\\\\RemoteMachineName\\root\\cimv2");
scope.Connect();

ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_Process WHERE Name='ProcessName'");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);

ManagementObjectCollection objectCollection = searcher.Get();
foreach(ManagementObject managementObject in objectCollection)
{
   managementObject.InvokeMethod("Terminate", null);
}
于 2012-09-13T15:15:09.050 回答