プロセスの取得方法を説明します。
System.Diagnostics.Processクラスを使用します。
自分自身のプロセスを取得する
Dim hPros As System.Diagnostics.Process = System.Diagnostics.Process.GetCurrentProcess() 'プロセス名を表示する MessageBox.Show(hPros.ProcessName) hPros.Close() hPros.Dispose()
実行中の全てのプロセスを取得する
Dim hPros As System.Diagnostics.Process() = System.Diagnostics.Process.GetProcesses()
'コンピュータ名を指定すると、別のコンピュータのプロセスが取得可能です
'hPros = System.Diagnostics.Process.GetProcesses("MachineName")
Dim str As String = ""
'取得できたプロセスからプロセス名を取得する
For Each hp As System.Diagnostics.Process In hPros
str &= hp.ProcessName & System.Environment.NewLine
Next
'実行中のすべてのプロセス名を表示する
MessageBox.Show(str)
コンピュータ名を指定することで、別のコンピュータのプロセスが取得可能になります。
hPros = System.Diagnostics.Process.GetProcesses(“xxxxxxxxxx”)
指定した名前に合致するプロセスを全て取得する
System.Diagnostics.ProcessクラスのGetProcessesByNameメソッドを使用します。
Dim hPros As System.Diagnostics.Process() = System.Diagnostics.Process.GetProcessesByName("Notepad")
Dim str As String = ""
'取得できたプロセスからプロセスIDを取得する
For Each hp As System.Diagnostics.Process In hPros
str &= hp.id & System.Environment.NewLine
Next
'取得したっ全てのプロセスIDを表示する
MessageBox.Show(str)
指定したIDに合致するプロセスを取得する
System.Diagnostics.ProcessクラスのGetProcessByIdメソッドを使用します。
'プロセスIDが0のプロセスを取得する
Dim hPros As System.Diagnostics.Process = System.Diagnostics.Process.GetProcessById(0)
'取得できたプロセス名を表示する
If Not hPros Is Nothing Then
MessageBox.Show(hPros.ProcessName)
End If
hPros.Close()
hPros.Dispose()