Export (0) Print
Expand All

Engines Interface

A collection of debugging Engine objects.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

public interface Engines : IEnumerable

The Engines type exposes the following members.

Public propertyCountGets a value indicating the number of objects in the Engines collection.
Public propertyDTEGets the top-level extensibility object.
Public propertyParentGets the immediate parent object of a Engines collection.

Public methodGetEnumeratorGets an enumeration for items in a collection.
Public methodItemGets an indexed member of a Engines collection.


When you record a macro and attach to a debugging process using the T-SQL debugging engine, the macro returns two separate references to the same engine name. For example, dbgeng(0) = transprt.Engines.Item("T-SQL") and dbgeng(1) = transprt.Engines.Item("T-SQL"). This happens because there are actually two underlying T-SQL debugging engines in Visual Studio: one for the SQL Server 2005 debugging engine, the other for the T-SQL debugging engine for SQL Server 2000 and SQL Server 7. They are both automatically referenced when attaching to a debugging engine process via the UI, but in automation code, they must each be referenced by using their unique identifier GUID. The GUID for SQL Server 2005 is {1202F5B4-3522-4149-BAD8-58B2079D704F}, and the GUID for the T-SQL debugging engine for SQL Server 2000 and SQL Server 7 is {5AF6F83C-B555-11D1-8418-00C04FA302A1}. So the above calls should be changed to dbgeng(0) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}") and dbgeng(1) = trans.Engines.Item("{1202F5B4-3522-4149-BAD8-58B2079D704F}") respectively.

Community Additions

© 2014 Microsoft