Поделиться через


Engine - интерфейс

Отладчик, который используется для сопоставления с типом кода.

Пространство имен:  EnvDTE80
Сборка:  EnvDTE80 (в EnvDTE80.dll)

Синтаксис

'Декларация
<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

Тип Engine предоставляет следующие члены.

Свойства

  Имя Описание
Открытое свойство AttachResult Возвращает результат, указывающий, произошел ли сбой во вложенном отладчике.
Открытое свойство Collection Возвращает коллекцию Engines.
Открытое свойство DTE Возвращает объект расширения верхнего уровня.
Открытое свойство ID Возвращает идентификатор GUID отладчика.
Открытое свойство Name Возвращает имя объекта Engine.
Открытое свойство Parent Возвращает непосредственный родительский объект объекта Engine.

В начало страницы

Заметки

Используется для определения способа отладки отладчиком на основании кода. Соответствует окну Присоединение к процессу.

Объект Engine используется для указания типов программ, которые должны отлаживаться в данном процессе. Например, если в процессе следует отлаживать только управляемый код, то следует присоединиться к процессу с использованием отладчика среды CLR. Для отладки управляемой и неуправляемой частей процесса следует присоединиться с использованием механизма взаимодействия COM +.

Примечание

При записи макроса и его подключении к процессу отладки с использованием отладчика Transact-SQL этот макрос возвращает две разные ссылки на одно имя отладчика.Например, dbgeng(0) = transprt.Engines.Item("T-SQL") и dbgeng(1) = transprt.Engines.Item("T-SQL").Это происходит потому, что фактически существует два базовых отладчика Transact-SQL в Visual Studio: один для отладчика SQL Server 2005, другой для отладчика Transact-SQL SQL Server 2000 и SQL Server 7.Ссылки на них автоматически устанавливаются при прикреплении к процессу отладчика через пользовательский интерфейс, но в коде автоматизации ссылки на них необходимо задать с помощью их уникальных идентификаторов GUID.GUID для SQL Server 2005 — {1202F5B4-3522-4149-BAD8-58B2079D704F}, а GUID для отладчика Transact-SQL в SQL Server 2000 и SQL Server 7 — {5AF6F83C-B555-11D1-8418-00C04FA302A1}.Таким образом, указанные выше вызовы следует заменить на dbgeng(0) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}") и dbgeng(1) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}") соответственно.

Примеры

' 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

См. также

Ссылки

EnvDTE80 - пространство имен

Engines