Freigeben über


Process3.Attach2-Methode

Bewirkt, ähnlich wie Attach, dass der Debugger diesen Prozess anfügt. Sie haben jedoch die Möglichkeit, ein Modul oder einen Satz von Modulen anzugeben.

Namespace:  EnvDTE90
Assembly:  EnvDTE90 (in EnvDTE90.dll)

Syntax

'Declaration
Sub Attach2 ( _
    Engines As Object _
)
void Attach2(
    Object Engines
)
void Attach2(
    [InAttribute] Object^ Engines
)
abstract Attach2 : 
        Engines:Object -> unit
function Attach2(
    Engines : Object
)

Parameter

  • Engines
    Typ: Object

    Eine Engines-Auflistung.

Hinweise

Attach2 ermöglicht das Anfügen eines Prozesses unter Verwendung eines bestimmten Debugmoduls oder eines Satzes von Modulen. Der Engines-Parameter kann ein einzelnes BSTR, eine Auflistung von BSTRs, ein einzelnes Engine-Objekt oder eine Auflistung von Engine-Objekten sein. Wenn Sie ihn als BSTR angeben, können die ersten Zeichen des Modulnamens oder die Modul-ID (GUID) angeben werden. Die Liste der Module ist für einen vorgegebenen Transport spezifisch.

Beispiele

' Macro code.
' The examples below illustrate how to attach to default, local, and 
' remote processes.
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics
Imports Microsoft.VisualBasic.ControlChars

Public Module Module1

    Sub NativeAttachToLocalCalc()
        Dim dbg2 As EnvDTE90.Debugger3
        dbg2 = DTE.Debugger

        Dim attached As Boolean = False
        Dim proc As EnvDTE90.Process3
        For Each proc In DTE.Debugger.LocalProcesses
            If (Right(proc.Name, 8) = "calc.exe") Then
                proc.Attach2("native")
                attached = True
                Exit For
            End If
        Next

        If attached = False Then
            If attached = False Then
                MsgBox("calc.exe isn't running")
            End If
        End If
    End Sub

    Sub DefaultAttachToLocalCalc()
        Dim dbg2 As EnvDTE90.Debugger3
        dbg2 = DTE.Debugger

        Dim attached As Boolean = False
        Dim proc As EnvDTE90.Process3
        For Each proc In DTE.Debugger.LocalProcesses
            If (Right(proc.Name, 8) = "calc.exe") Then
                proc.Attach2()
                attached = True
                Exit For
            End If
        Next

        If attached = False Then
            If attached = False Then
                MsgBox("calc.exe isn't running")
            End If
        End If
    End Sub
End Module

.NET Framework-Sicherheit

Siehe auch

Referenz

Process3 Schnittstelle

EnvDTE90-Namespace