0

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);

 }
4

2 に答える 2

2

ライブラリ (またはその他の SNMP ライブラリ) は、すべてのタスクを実行するのに役立ちません。

エージェントにホスト リソース MIBを実装する必要があります。これhrSWRunTableにより、SNMP マネージャがクエリを実行できるようになります。

http://www.net-snmp.org/docs/mibs/host.html#hrSWRunTable

このテーブルを実装するにはProcess.GetProcesses、チャールズが示したように使用できます。

PowerSNMP のエージェントを拡張する方法については、そのソース コードと Dart のドキュメントを参照できます。

于 2016-06-11T04:26:29.527 に答える
0

.Net フレームワーク (System.Diagnostics.Process) に機能があります。

以下を含めることを忘れないでください:using System.Diagnostics;

Process.GetProcesses();

プロセスの配列を返す

于 2016-06-10T18:11:19.040 に答える