Debugger3.DebuggedProcesses 属性

获取正在调试的进程的列表。

命名空间:  EnvDTE90
程序集:  EnvDTE90(在 EnvDTE90.dll 中)

语法

声明
ReadOnly Property DebuggedProcesses As Processes
Processes DebuggedProcesses { get; }
property Processes^ DebuggedProcesses {
    Processes^ get ();
}
abstract DebuggedProcesses : Processes with get
function get DebuggedProcesses () : Processes

属性值

类型:Processes
一个 Processes 集合。

备注

DebuggedProcesses 获取一个 Processes 集合,该集合表示当前正在调试的进程。

示例

下面的示例演示如何使用 DebuggedProcesses 属性。

测试此属性:

  1. 在目标应用程序中设置一个断点。 运行外接程序。

    当前没有调试任何进程。

  2. 在目标应用程序中设置一个断点。 运行目标应用程序。 当此应用程序停在该断点处时,运行外接程序。

    正在调试该进程。

public static void DebuggedProcesses(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("Debugged Processes 
    Test");
    owp.Activate();

    EnvDTE90.Debugger3 debugger = (EnvDTE90.Debugger3)dte.Debugger;
    EnvDTE.Processes processes = debugger.DebuggedProcesses;
    if (processes.Count == 0)
        owp.OutputString("No processes are being debugged.");
    else
        foreach (EnvDTE.Process proc in processes)
            owp.OutputString("\nProcess: [" + proc.ProcessID + "] " + 
                             proc.Name);
}
Sub ListDebuggedProcesses()
    Dim ow As OutputWindow
    ow = DTE2.Windows.Item(Constants.vsWindowKindOutput).Object
    Dim proc As EnvDTE.Process2

    If DTE2.Debugger.DebuggedProcesses.Count = 0 Then
        ow.ActivePane.OutputString("No processes are being debugged." _
        & vbCrLf)

    Else
        For Each proc In DTE2.Debugger.DebuggedProcesses
            ow.ActivePane.OutputString("Process: [" + _
            Str(proc.ProcessID) + "] " + proc.Name + vbCrLf)
        Next
   End If
End Sub

.NET Framework 安全性

请参阅

参考

Debugger3 接口

EnvDTE90 命名空间