vb6.exe 中 发生未处理的win32异常,请问该如何处理?
- VB code
Private Sub cmdExit_Click() EndEnd SubPrivate Sub cmdOK_Click() Dim ret As Long ret = SetVTText("VT1", sDtStart.Value) ret = SetVTText("VT2", sDtEnd.Value) ret = SetVTText("VT3", cboPhoneNo.Text) ret = SetVTText("VT4", txtSMS.Text) EndEnd SubPrivate Sub Form_Load() '初始化日期控件的时间值 sDtStart.Hour = Hour(Now) sDtEnd.Hour = Hour(Now) sDtStart.Minute = Minute(Now) sDtEnd.Minute = Minute(Now) sDtStart.Second = Second(Now) sDtEnd.Second = Second(Now) '为组合框cboPhoneNo绑定数据源 Dim con As New ADODB.Connection Dim rst As New ADODB.Recordset Dim sql As String Dim conn As String con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\SmsLog.mdb;Persist Security Info=False" sql = "select distinct Phone from ReceiveLog" rst.Open sql, con, adOpenKeyset, adLockOptimistic cboPhoneNo.Clear Do While Not rst.EOF cboPhoneNo.AddItem (Trim(rst(0))) rst.MoveNext Loop rst.Close con.CloseEnd SubPrivate Sub Form_Unload(Cancel As Integer) EndEnd Sub
[解决办法]
sDtStart.Value 改成cstr(sDtStart.Value) ,sDtend.Value 改成cstr(sDtStart.Value) 试试
[解决办法]
你要注意提供API的说明,什么样的参数才是合法的.
如果确定了是在输入了空值后出的错,那么就说明空值是不合法的.
这样的话需要在程序里先判断一下值是否为空,例如:
if cboPhoneNo.Text<>"" then
ret = SetVTText("VT3", cboPhoneNo.Text)
else
msgbox "cboPhoneNo不能为空!"
exit sub
end if
关键还是要知道API的参数的规则.