Freigeben über


Process2.Attach2-Methode

Ähnlich wie Attach bewirkt der Debugger das Anfügen dieses Prozesses. Dabei haben Sie nur die Möglichkeit, ein Modul oder einen Satz von Modulen anzugeben.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.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

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. Bei Angabe als BSTR können Sie die ersten Zeichen des Modulnamens oder die Modul-ID (GUID) angeben. 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 System.Diagnostics
Imports Microsoft.VisualBasic.ControlChars

Public Module Module1

    Sub NativeAttachToLocalCalc()
        Dim dbg2 As EnvDTE80.Debugger2
        dbg2 = DTE.Debugger

        Dim attached As Boolean = False
        Dim proc As EnvDTE80.Process2
        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 EnvDTE80.Debugger2
        dbg2 = DTE.Debugger

        Dim attached As Boolean = False
        Dim proc As EnvDTE80.Process2
        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

Process2 Schnittstelle

EnvDTE80-Namespace

Weitere Ressourcen

Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell