我想用dart PowerSNMP for .NET来检索所有进程及其各自的pid的列表,并在我收到事件中的消息时将它们写入Visual Studio控制台。我假设这是通过走mib树然后检索特定OID的实际值来完成的,但我不太清楚这一切是如何工作的。
例如,假设我有一个接收这样的消息的代理。
private void agent1_MessageReceived(Agent agent, RequestMessage request, object state)
{
//print the processes and pids using power snmp
String process = "";
//concat processes and pids
....
Console.WriteLine(process);
}
答案 0 :(得分:2)
库(或任何其他SNMP库)无法帮助您完成所有任务。
您必须在代理中实施Host Resources MIB,以便SNMP管理员可以查询hrSWRunTable
,
http://www.net-snmp.org/docs/mibs/host.html#hrSWRunTable
要实施此表格,您可以使用Process.GetProcesses
作为Charles指示。
关于如何扩展PowerSNMP的代理,您可以参考其源代码以及Dart的文档。
答案 1 :(得分:0)
.Net框架中有一个函数(System.Diagnostics.Process)
请记住包括:using System.Diagnostics;
返回进程数组