贴段代码,高手们帮我看下,今天必须解决的问题,100分不够我下午另开100分
Public Enum EN_LOGKIND As Byte
EN_COMMAND = 0
EN_SECNET = 1
EN_ETHER = 2
EN_ERROR = 3
End Enum
'构造体
Private Structure ST_LOG
Public m_enKind As EN_LOGKIND
Public m_strLog As String
End Structure
Private m_cLogQue As ClsQueue ‘ClsQueue是我自定义一个队列,没什么内容,只 有读和写俩函数
Private m_blThreadFlg As Boolean
'FileCheck()创建日志文件名称,删除旧的、过期的日志文件内容,同时还可以检测磁盘空间。
'FileOut()将操作的日志信息记录的相应的日志文件中去,m_strLog为记录的日志详细内容。
Private Sub LogOut()
Dim l_stLog As ST_LOG
Try
Do
If m_cLogQue.Count = 0 Then CurrentThread.Sleep(10)
If m_cLogQue.Count = 0 AndAlso m_blThreadFlg = False Then
Exit Do
ElseIf m_cLogQue.Count > 0 Then
l_stLog = CType(m_cLogQue.Dequeue(), ST_LOG)
With l_stLog
FileCheck(.m_enKind)
FileOut(.m_enKind, .m_strLog)
If m_blLogWndFlg = True AndAlso _
IsNothing(m_cLogForm) = False AndAlso _
m_blThreadFlg = True Then
m_cLogForm.AddLog(.m_enKind, .m_strLog)
End If
#If DEBUG Then
Debug.WriteLine(.m_strLog)
#End If
End With
CurrentThread.Sleep(5)
End If
Loop
Catch Err As Exception
LogWrite(EN_LOGKIND.EN_ERROR, "File :mod_com_log.vb Method :LogOut() Message :" & Err.Message)
End Try
End Sub
说明一下,程序运行时会记录当前日志到一个文件中,窗体中有个ListBox,我想通过debug将文件中的日志内容显示在这个Listbox中,控件属性肯定没问题,目前只知道程序运行m_cLogQue.Count的值是0,然后程序就不会走 Else If 里,有什么办法能让这段代码的日志显示到ListBoc中或者在某处强制将m_cLogQue.Count的值设置成大于0的。