2016-10-30 7 views
0

私はPIDの検索方法を理解しようとしています。例えばnotepad.exeです。私はこれを探検して、たくさんのものを見つけましたが、私はそれをかなり理解できません。私はこのコードを試してみた:実行時に開いているプログラムのPIDを見つける方法

Dim currentProcess As Process = Process.GetCurrentProcess() 
Dim localAll As Process() = Process.GetProcesses() 
Dim localByName As Process() = Process.GetProcessesByName("notepad") 
Label1.Text = localByName.ToString 

しかし、私はlabel1で出力としてsystem.diagnostics.process[]を取得します。私はまだvb.netのかなりのnoobです、そして、ここで問題を見つけるように見えることができません。

+0

この質問は、別のユーザーによって昨日頼まれました。興味深いこの質問は、別のユーザー名と単語の単語によって再びポップアップしました。 – Codexer

答えて

1

GetProcessesByNameは配列を返します。複数のメモ帳を実行している可能性がありますが、ここでは最初のIDを取得する方法があります。

Dim currentProcess As Process = Process.GetCurrentProcess() 
Dim localAll As Process() = Process.GetProcesses() 
Dim localByName As Process() = Process.GetProcessesByName("notepad") 

'Do this 
Label1.Text = localByName(0).Id 

または

'Find all! 
for each proc in localByName 
    Label1.Text &= proc.Id & vbCrLf 'vbCrlf just adds a new line for reading purposes 
next 
+0

ありがとう!それは完璧に働いた:^) – Alszajs

関連する問題