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