Engine.ID 属性
获取调试引擎的 ID GUID。
命名空间: EnvDTE80
程序集: EnvDTE80(在 EnvDTE80.dll 中)
语法
声明
ReadOnly Property ID As String
string ID { get; }
property String^ ID {
String^ get ();
}
abstract ID : string with get
function get ID () : String
属性值
类型:String
一个以 GUID 格式包含调试引擎 ID 的字符串。
备注
备注
当您使用 Transact-SQL 调试引擎记录某个宏并附加到调试进程时,该宏将返回对同一个引擎名的两个单独引用。例如,dbgeng(0) = transprt.Engines.Item("T-SQL") 和 dbgeng(1) = transprt.Engines.Item("T-SQL")。之所以发生此情况,是因为在 Visual Studio 中实际存在两个基础 Transact-SQL 调试引擎:一个用于 SQL Server 2005 调试引擎,另一个用于 SQL Server 2000 和 SQL Server 7 的 Transact-SQL 调试引擎。在通过 UI 附加到调试引擎进程时,将会自动引用这两个引擎,但是在自动化代码中,必须通过使用它们的唯一标识符 GUID 来引用它们。SQL Server 2005 的 GUID 是 {1202F5B4-3522-4149-BAD8-58B2079D704F},Transact-SQL 调试引擎的 GUID 是 {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
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关详细信息,请参阅通过部分受信任的代码使用库。