程序死亡的原因?
Private Sub Command1_Click()
Dim StartStr As String, SendStr As String, ReceiveStr As String, PatientCard As String
StartStr = "12345678"
'略部分
SendStr = SendStr & "ZZZZ"
On Error GoTo errhandle
Dim i As Long, WrongMark As String
ReceiveStr = String(516, " ")
i = SendRcv2(StartStr, SendStr, ReceiveStr)
WrongMark = UCase(Mid(ReceiveStr, 9, 4))
Select Case Trim(WrongMark)
Case ""
PatientCard = Mid(ReceiveStr, 65, 9)
Me.txtYBKH = PatientCard
JZLBCBox.SetFocus
Call txtYBKH_KeyDown(13, 0)
Case "P001"
PatientCard = Mid(ReceiveStr, 65, 9)
Me.txtYBKH = PatientCard
JZLBCBox.SetFocus
Call txtYBKH_KeyDown(13, 12)
Case Else
MsgBox "读卡失败" & ":" & Trim(Mid(ReceiveStr, 389, 60)), vbCritical, "提示信息"
txtYBKH.SetFocus
End Select
Exit Sub
errhandle:
MsgBox "请插入医保卡!", vbOKOnly, "提示信息"
End Sub
Private Sub txtYBKH_KeyDown(KeyCode As Integer, Shift As Integer)
Dim rsZYpat As ADODB.Recordset
Dim rsMZpat As ADODB.Recordset
Dim strSQL As String
If KeyCode = 112 Then ' '刷IC卡 (按F1)
Command1_Click
End If
If KeyCode = 13 And Trim(txtYBKH.Text) <> "" Then
'略
End If
Set rsZYpat = Nothing
Set rsMZpat = Nothing
End If
End Sub
上述刷卡程序有时候会死亡,是什么原因啊?如果在txtYBKH_KeyDown函数中加入onerror goto errhandle 结束程序运行能不能解决问题啊,因为程序是偶尔死掉,所以不好定位,连接的数据库不是本地的,我怀疑是网络延迟造成的,希望各位大虾赐教!!!不胜感激!!!