Debugger2.LocalProcesses プロパティ
このコンピューター上で現在実行されているプロセスのリストを取得します。
名前空間: EnvDTE80
アセンブリ: EnvDTE80 (EnvDTE80.dll 内)
構文
'宣言
ReadOnly Property LocalProcesses As Processes
Processes LocalProcesses { get; }
property Processes^ LocalProcesses {
Processes^ get ();
}
abstract LocalProcesses : Processes
function get LocalProcesses () : Processes
プロパティ値
型 : EnvDTE.Processes
Processes コレクション。
解説
LocalProcesses は、このコンピューターで実行しているプロセスのリストを含む Processes コレクションを取得します。現在デバッグ中かどうかに関係なく、すべてのプロセスがリストされます。現在デバッグ中のプロセスのサブセットを取得するには、DebuggedProcesses を使用します。
例
LocalProcesses プロパティを使用する方法を次の例に示します。
このプロパティをテストするには、対象のプロジェクトを開き、アドインを実行します。
public static void LocalProcesses(EnvDTE80.DTE2 dte)
{
// Setup debug Output window.
Window w =
(Window)dte.Windows.Item(EnvDTE.Constants.vsWindowKindOutput);
w.Visible = true;
OutputWindow ow = (OutputWindow)w.Object;
OutputWindowPane owp = ow.OutputWindowPanes.Add("Local Processes
Test");
owp.Activate();
EnvDTE80.Debugger2 debugger = (EnvDTE80.Debugger2)dte.Debugger;
EnvDTE.Processes processes = debugger.LocalProcesses;
if (processes.Count == 0)
owp.OutputString("No processes are running on this machine.");
else
{
owp.OutputString("Processes running on this machine:");
foreach (EnvDTE80.Process2 proc in processes)
owp.OutputString("\nProcess: [" + proc.ProcessID + "] " +
proc.Name);
}
}
Sub AttachToCalc()
' This function attaches to calc.exe if it is running.
Dim attached As Boolean = False
Dim proc As EnvDTE.Process
For Each proc In DTE2.Debugger.LocalProcesses
If (Right(proc.Name, 8) = "calc.exe") Then
proc.Attach()
attached = True
Exit For
End If
Next
If attached = False Then
MsgBox("calc.exe is not running")
End If
End Sub
.NET Framework セキュリティ
- 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。