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 | |
---|---|---|
AttachResult | Ruft ein Ergebnis ab, das angibt, ob bei einem angehängten Modul ein Fehler aufgetreten ist. | |
Collection | Ruft die Engines-Auflistung ab. | |
DTE | Ruft das Erweiterbarkeitsobjekt der obersten Ebene ab. | |
ID | Ruft die ID (GUID) des Debugmoduls ab. | |
Name | Ruft den Namen des Engine-Objekts ab. | |
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+".
Hinweis |
---|
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