Interfejs Engine
Aparat programu debug, który jest używany do mapowania typu kodu.
Przestrzeń nazw: EnvDTE80
Zestaw: EnvDTE80 (w EnvDTE80.dll)
Składnia
'Deklaracja
<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
Typ Engine uwidacznia następujące elementy członkowskie.
Właściwości
Nazwa | Opis | |
---|---|---|
AttachResult | Zwraca wynik, wskazując, czy dołączone silnika nie powiodło się lub nie. | |
Collection | Pobiera Engines kolekcji. | |
DTE | Pobiera obiekt rozszerzalności najwyższego poziomu. | |
ID | Pobiera identyfikator GUID aparatu debugowania. | |
Name | Pobiera nazwę Engine obiektu. | |
Parent | Zwraca obiekt nadrzędny natychmiastowe z Engine obiektu. |
Początek
Uwagi
Używana do określenia, jak będzie debugować debuger oparty na kodzie.Odpowiada to Dołącz, aby proces okna.
Engine Obiekt jest używany, aby określić, jakiego typu programy mają być debugowane w danym procesie.Na przykład jeśli chcesz debugować tylko kodu zarządzanego wewnątrz procesu, dołączyć do procesu przy użyciu "Common Language Runtime" debugowanie silnika.Jeśli chcesz debugować zarówno zarządzanych i niezarządzanych części procesu, dołącza się z silnika "współdziałania z modelem COM +".
[!UWAGA]
Podczas rejestrowania makra i dołączyć do debugowania używając procesu Transact-SQL makro debugowanie silnika, zwraca się z dwóch oddzielnych odwołań do tej samej nazwie silnika.For example, dbgeng(0) = transprt.Engines.Item("T-SQL") and dbgeng(1) = transprt.Engines.Item("T-SQL").Dzieje się tak, ponieważ istnieją faktycznie dwa podstawowej Transact-SQL debugowania silników w Visual Studio: jeden dla SQL Server 2005 silnika debugowania, drugą dla Transact-SQL debugowania silnika dla programu SQL Server 2000 oraz SQL Server 7.Oni są zarówno automatycznie określany podczas dołączania do debugowania procesu silnika, za pośrednictwem interfejsu użytkownika, ale w kodzie automatyzacji one musi każdego odwoływać się przy użyciu ich identyfikator unikatowy identyfikatora GUID.Identyfikator GUID dla SQL Server 2005 jest {1202F5B4-3522-4149-BAD8-58B2079D704F} i identyfikator GUID dla Transact-SQL debugowania silnika dla programu SQL Server 2000 oraz SQL Server 7 jest {5AF6F83C-B555-11D1-8418-00C04FA302A1}.Tak wywołań powyżej należy zmienić na dbgeng(0) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}") i dbgeng(1) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}") odpowiednio.
Przykłady
' 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