我制作了一个程序,该程序可以扫描公司的子网,并让我在单个客户端上或在所有客户端上一起做很多事情(例如关闭所有客户端)。我留下了一个截图,显示了我的程序如何工作。
对于某些需求,我试图添加一个名称为“ Process Kill”的功能,该功能向我显示了所选客户端的正在运行的任务列表(仅“ Applications”选项卡,而不是Background或System任务),让我杀死了一个我选择。
问题是我发现只有显示所有打开过程的函数(考虑到系统任务,通常不少于100个,而我不喜欢它。
所以我问你是否有人知道如何仅获取在“应用程序”选项卡中打开的Taksk的列表。
如果您也想添加使我也可以远程杀死它的代码,将很有用。
谢谢!
更新:
这是即时通讯工具实际上用于获取MenuStrip项中所有进程的方法>
//IP Address of the remote machine
string ipAddress = row.Cells["IP"].Value.ToString();
ManagementScope scope = new ManagementScope(@"\\" + ipAddress + @"\root\cimv2");
scope.Options = connectoptions;
//Define the WMI query to be executed on the remote machine
SelectQuery query = new SelectQuery("select * from Win32_Process");
using (ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query)){
ManagementObjectCollection collection = searcher.Get();
foreach (ManagementObject process in collection){
(conMenuStripIP.Items[5] as ToolStripMenuItem).DropDownItems.Add(process["Name"].ToString());
}
}
我制作了一个程序,该程序可以扫描公司的子网,并让我在单个客户端上或在所有客户端上一起做很多事情(例如关闭所有客户端)。我留下了一个截图,显示了我的程序如何工作。 ...
我认为您可以依靠用户启动该过程。后台进程应由特殊的用户帐户(例如[SYSTEM
,LOCAL SERVICE
,NETWORK SERVICE
等)启动。如果排除由此类用户启动的进程,则应具有应用程序列表