Share via


Engine, interface

Mise à jour : novembre 2007

Moteur de débogage qui est utilisé pour mapper au type de code.

Espace de noms :  EnvDTE80
Assembly :  EnvDTE80 (dans EnvDTE80.dll)

Syntaxe

<GuidAttribute("8CEA6D39-EBEE-4DE9-B282-B5CECE9C9861")> _
Public Interface Engine

Dim instance As Engine
[GuidAttribute("8CEA6D39-EBEE-4DE9-B282-B5CECE9C9861")]
public interface Engine
[GuidAttribute(L"8CEA6D39-EBEE-4DE9-B282-B5CECE9C9861")]
public interface class Engine
public interface Engine

Notes

Utilisé pour déterminer le fonctionnement du débogueur en fonction du code. Cela correspond à la fenêtre Attacher au processus.

Un objet Engine est utilisé pour spécifier quels types de programmes doivent être débogués dans un processus donné. Par exemple, si vous souhaitez déboguer uniquement le code managé à l'intérieur d'un processus, attachez-vous au processus à l'aide du moteur de débogage « Common Language Runtime ». Si vous souhaitez déboguer à la fois les parties managées et non managées d'un processus, attachez-vous à l'aide du moteur « Interop COM+ ».

Remarque :

Lorsque vous enregistrez une macro et que vous la joignez à un processus de débogage à l'aide du moteur de débogage T-SQL, elle retourne deux références distinctes au même nom de moteur. Par exemple, dbgeng(0) = transprt.Engines.Item("T-SQL") et dbgeng(1) = transprt.Engines.Item("T-SQL"). Cela se produit parce qu'il existe deux moteurs de débogage T-SQL sous-jacents dans Visual Studio : un pour le moteur de débogage SQL Server 2005 et l'autre pour le moteur de débogage T-SQL destiné à SQL Server 2000 et SQL Server 7. Ils sont tous les deux référencés automatiquement lors de leur attachement à un processus du moteur du débogage via l'interface utilisateur. Cependant, dans le code d'automation, chacun doit être référencé à l'aide de leur identificateur unique (GUID). Le GUID de SQL Server 2005 est \{1202F5B4-3522-4149-BAD8-58B2079D704F\}, et le GUID du moteur de débogage T-SQL pour SQL Server 2000 et SQL Server 7 est \{5AF6F83C-B555-11D1-8418-00C04FA302A1\}. Par conséquent, les appels ci-dessus doivent être remplacés respectivement par dbgeng(0) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}") et dbgeng(1) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}").

Exemples

' 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

Voir aussi

Référence

Membres Engine

EnvDTE80, espace de noms

Engines