📄 traceform.vb
字号:
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''ch07 示例10
''
''' '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Imports Microsoft.SqlServer.Management.Smo
Imports Microsoft.SqlServer.Management.Trace
Imports Microsoft.SqlServer.Management.Common
Public Class TraceForm
Dim tTraceFile As String
Public Class TRACEREPLAYCLASS
Inherits TraceReplay
Public traceinfo As String
End Class
Dim btr As New TRACEREPLAYCLASS
Private Sub btBrowse_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btBrowse.Click
OpenFileDialog1.DefaultExt = "trc"
OpenFileDialog1.Filter = "(跟踪文件)*.trc|*.trc"
OpenFileDialog1.ShowDialog()
tTraceFile = OpenFileDialog1.FileName
If tTraceFile = "" Then
MsgBox("请输入要访问的跟踪文件")
Exit Sub
End If
End Sub
Private Sub TraceForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
tTraceFile = ""
End Sub
Private Sub btReplay_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btReplay.Click
If tTraceFile = "" Then
MsgBox("还没有选择跟踪文件,请先选择跟踪文件")
Exit Sub
End If
Dim bTF As New TraceFile
Dim conn As SqlConnectionInfo
Dim btfEventHandle As New ReplayEventHandler(AddressOf bTR_ReplayEvent)
AddHandler bTR.ReplayEvent, btfEventHandle
conn = New SqlConnectionInfo("(local)")
bTF.InitializeAsReader(tTraceFile)
bTR.Source = bTF
bTR.Connection = conn
btr.Start()
Dim a() As String
Dim i As Integer
a = Split(btr.traceinfo, "/")
For i = 0 To a.GetLength(0) - 1
lbTrace.Items.Add(a(i))
Next
' tr.Connection = new SqlConnectionInfo("localhost");
' tr.ReplayEvent += new ReplayEventHandler(tr_ReplayEvent);
' tr.Start( );
' Console.WriteLine(Environment.NewLine + "Press any key to continue.");
' Console.ReadKey( );
End Sub
Private Sub bTR_ReplayEvent(ByVal sender As Object, ByVal args As ReplayEventArgs)
Dim i As Integer
For i = 0 To args.CurrentRecord.FieldCount - 1
sender.traceinfo = sender.traceinfo + args.CurrentRecord(i).ToString + "/"
'sender.traceinfo = sender.traceinfo + args.CurrentRecord(i)
Next
End Sub
End Class
'using System;
' using System.Data;
' using System.Collections;
' using Microsoft.SqlServer.Management.Common;
' using Microsoft.SqlServer.Management.Smo;
' using Microsoft.SqlServer.Management.Trace;
'Class Program
' {
' static void Main(string[] args)
' {
'
' }
' static void tr_ReplayEvent(object sender, ReplayEventArgs args)
' {
' Console.WriteLine("--- Record number: " + args.RecordNumber + " ---");
' for (int i = 0; i < args.CurrentRecord.FieldCount; i++)
' Console.WriteLine(args.CurrentRecord[i].ToString( ));
' Console.WriteLine( );
' }
' }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -