Condividi tramite


Interfaccia Engine

Modulo di debug utilizzato per eseguire il mapping al tipo di codice.

Spazio dei nomi:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

Sintassi

'Dichiarazione
<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

Il tipo Engine espone i seguenti membri.

Proprietà

  Nome Descrizione
Proprietà pubblica AttachResult Ottiene un risultato che indica se un modulo connesso ha avuto esito negativo o positivo.
Proprietà pubblica Collection Ottiene l'insieme Engines.
Proprietà pubblica DTE Ottiene l'oggetto estensibilità di primo livello.
Proprietà pubblica ID Ottiene l'ID GUID del modulo di gestione del debug.
Proprietà pubblica Name Ottiene il nome dell'oggetto Engine.
Proprietà pubblica Parent Ottiene l'oggetto padre immediato di un oggetto Engine.

In alto

Note

Consente di determinare il modo in cui il debug verrà eseguito in base al codice. Corrisponde alla finestra Connetti a processo.

L'oggetto Engine consente di specificare il tipo di programmi di cui si eseguirà il debug in un determinato processo. Se, ad esempio, si desidera eseguire il debug solo del codice gestito all'interno di un processo, connettersi al processo mediante il modulo di gestione di debug di "Common Language Runtime". Se si desidera eseguire il debug sia delle parti gestite che non gestite di un processo, connettersi al processo mediante il modulo "Interop COM+".

Nota

Quando si registra una macro associandovi un processo di debug mediante il motore di debug Transact-SQL, la macro restituisce due riferimenti distinti allo stesso nome di motore. Ad esempio, dbgeng(0) = transprt.Engines.Item("T-SQL") e dbgeng(1) = transprt.Engines.Item("T-SQL"). Ciò si verifica perché sono effettivamente due moduli di gestione di debug Transact-SQL sottostanti in Visual Studio: uno per il modulo di gestione di debug SQL Server 2005, l'altro per il modulo di gestione di debug Transact-SQL per SQL Server 2000 e SQL Server 7. Automaticamente viene fatto riferimento a entrambi durante l'associazione a un processo di motore di debug attraverso la UI, ma nel codice di automazione è necessario fare riferimento a ognuno mediante l'identificatore univoco GUID. Il GUID per SQL Server 2005 è {1202F5B4-3522-4149-BAD8-58B2079D704F}, mentre il GUID per il motore di debug Transact-SQL per SQL Server 2000 e SQL Server 7 è {5AF6F83C-B555-11D1-8418-00C04FA302A1}. Quindi, le suddette chiamate devono essere modificate rispettivamente in dbgeng(0) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}") edbgeng(1) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}").

Esempi

' 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

Vedere anche

Riferimenti

Spazio dei nomi EnvDTE80

Engines