2011-06-25 23 views
0

リモートコンピュータ上で実行されているサービスとプロセスの一覧を取得するための小さなプログラムを作成していますが、すべて正常に動作しています。私はプロセスのretリストとサービスのリストのServiceControllerのためのプロセスを使用しています。今ではリモートPC上で実行されているプロセスのサイズを取得し、プロセスに関連付けられたファイルのサイズを実際に見つけることができますか?リモートコンピュータのプロセス情報

答えて

1

リモート管理機能を実行するには、通常、正しい答えはWMIを使用することです。

System.Managementの種類を使用して、.NETのWMIと通信します。 This pageには簡単な例が含まれています。

リモートとローカルの両方の情報にWMIを使用することをお勧めします。— 2つのコードセットを使用しないでください。

+0

ありがとうございました。私は今あなたから提案されたアプローチに取り組んでいます! –

+0

私はインストール日付属性を取得しようとしましたが、常にnullを取得します! –

+0

@Aadi:ここでは常にnullです。 "InstallDate"は 'InstallData'が意味を成す他の多くのサブクラスを持つ' CIM_ManagedSystemElement'から継承されていることに注意してください。 – Richard

1

コマンドプロンプトのtasklistおよびtaskview機能もこれを行うのに役立ちます。プログラムはプロセスオブジェクト内のcmd.exeを実行し、入力として

tasklist /s remoteServer /u userName 

を入力し、出力を聞くことができます。それは、次の入力として提供されるべきアカウントのパスワードを要求します。 EndOfOutputに達するまで連続した出力を聞くことができます。

リモートコンピュータへのアクセス権がある場合は、Process.GetProcesses()を使用して実行中のプロセスの一覧を返すメソッドを使用して、WCFサービスをホストするWindowsフォームプログラムまたはコンソールアプリケーションを作成できますリモートコンピュータ。プログラム内でサービスクライアントを使用すると、リモートメソッドを呼び出すことができます。

上記の2つのいずれもWMIを使用しなくても動作します。

関連する問題