读书人

VB6关于USB接入或者拔出消息的捕获事件

发布时间: 2012-08-07 14:54:48 作者: rapoo

VB6关于USB接入或者拔出消息的捕获事件问题

VB code
Public Function WndProc(ByVal hwnd As Long, ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long '消息拦截 当有消息时候会在这里出现    If msg = WM_DEVICECHANGE Then '当消息是 磁盘发生改变    'MsgBox ("USB Changed !")        If DeviceNet.Visible = True Then   '在这个界面下,拔插USB开启tmrUSB定时器            If TelConnect = 1 Then                TelConnect = 0            End If            DeviceNet.tmrUSB.Enabled = True        ElseIf LEDsignal.Visible = True Then  ''在这个界面下,拔插USB开启tmrConnect定时器            If TelConnect = 1 Then                TelConnect = 0            End If            LEDsignal.tmrConnect.Enabled = True        ElseIf SelectCH.Visible = True Then   ''在这个界面下,拔插USB开启tmrTelCom定时器            If TelConnect = 1 Then                TelConnect = 0            End If            SelectCH.tmrTelCom.Enabled = True        End If    End If    TelConnect = 0    'Call CloseUSB    WndProc = CallWindowProcA(lpPrev, hwnd, msg, wParam, lParam) '返回消息给系统否则系统所有消息都被拦截 你的电脑几乎就是废了 关机都不行End Function


经调试发现不管当前界面为什么,所有定时器都开启。这是什么问题。

[解决办法]
代码中启用各个定时器的逻辑是正确的.

但是却没有看到停用定时器的代码.

另外,定时器的默认状态是启用还是停用?

读书人网 >VB

热点推荐