Freigeben über


Engine-Schnittstelle

Ein Debugmodul, das für die Codetypzuordnung verwendet wird.

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

Syntax

'Declaration
<GuidAttribute("8CEA6D39-EBEE-4DE9-B282-B5CECE9C9861")> _
Public Interface Engine
[GuidAttribute("8CEA6D39-EBEE-4DE9-B282-B5CECE9C9861")]
public interface Engine
[GuidAttribute(L"8CEA6D39-EBEE-4DE9-B282-B5CECE9C9861")]
public interface class Engine
[<GuidAttribute("8CEA6D39-EBEE-4DE9-B282-B5CECE9C9861")>]
type Engine =  interface end
public interface Engine

Der Engine-Typ macht die folgenden Member verfügbar.

Eigenschaften

  Name Beschreibung
Öffentliche Eigenschaft AttachResult Ruft ein Ergebnis ab, das angibt, ob bei einem angehängten Modul ein Fehler aufgetreten ist.
Öffentliche Eigenschaft Collection Ruft die Engines-Auflistung ab.
Öffentliche Eigenschaft DTE Ruft das Erweiterbarkeitsobjekt der obersten Ebene ab.
Öffentliche Eigenschaft ID Ruft die ID (GUID) des Debugmoduls ab.
Öffentliche Eigenschaft Name Ruft den Namen des Engine-Objekts ab.
Öffentliche Eigenschaft Parent Ruft das unmittelbar übergeordnete Objekt eines Engine-Objekts ab.

Zum Seitenanfang

Hinweise

Hiermit wird anhand des Codes bestimmt, wie der Debugger debuggt.Dies entspricht dem Fenster An den Prozess anhängen.

Mit einem Engine-Objekt wird angegeben, welche Programmtypen in einem angegebenen Prozess gedebuggt werden sollen.Wenn Sie z. B. nur verwalteten Code in einem Prozess debuggen möchten, verwenden Sie zum Anhängen an den Prozess das Debugmodul "Common Language Runtime".Wenn hingegen die verwalteten und die nicht verwalteten Teile eines Prozesses gedebuggt werden sollen, verwenden Sie zum Anfügen das Modul "Interop COM+".

HinweisHinweis

Wenn Sie ein Makro aufzeichnen und einen Debugprozess über das Transact-SQL-Debugmodul anfügen, gibt das Makro zwei einzelne Verweise auf denselben Modulnamen zurück.Beispielsweise dbgeng(0) = transprt.Engines.Item("T-SQL") und dbgeng(1) = transprt.Engines.Item("T-SQL").Dies geschieht, da es eigentlich zwei zugrunde liegende Transact-SQL-Debugmodule in Visual Studio gibt: eines für das SQL Server 2005-Debugmodul, das andere für das Transact-SQL-Debugmodul für SQL Server 2000 und SQL Server 7.Beim Anfügen eines Debugprozesses über die Benutzeroberfläche wird automatisch ein Verweis auf beide Module erstellt, im Automatisierungscode muss jedoch mit der jeweiligen eindeutigen Bezeichner-GUID einzeln auf sie verwiesen werden.Die GUID für SQL Server 2005 lautet {1202F5B4-3522-4149-BAD8-58B2079D704F}, und die GUID des Transact-SQL-Debugmoduls für SQL Server 2000 und SQL Server 7 ist {5AF6F83C-B555-11D1-8418-00C04FA302A1}.Deshalb sollten die oben genannten Aufrufe jeweils in dbgeng(0) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}") und dbgeng(1) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}") geändert werden.

Beispiele

' Macro code.
Imports EnvDTE
Imports EnvDTE80
Imports System.Diagnostics
Imports Microsoft.VisualBasic.ControlChars

Public Module Module1

    Sub ShowDefaultEngines()
        Dim dbg As EnvDTE80.Debugger2
        dbg = DTE.Debugger

        dbg.HexDisplayMode = True

        Dim transport As EnvDTE80.Transport
        transport = dbg.Transports.Item("default")

        Dim engine As EnvDTE80.Engine
        Dim strEngineList As String
        For Each engine In transport.Engines
            strEngineList = strEngineList + engine.Name + ", " + _
            engine.ID + ", " + engine.AttachResult.ToString + NewLine
        Next
        MsgBox(strEngineList)
    End Sub
End Module

Siehe auch

Referenz

EnvDTE80-Namespace

Engines