VB中MsgBox的问题!!!

qixingl 2008-04-09 04:32:21
VB6中,怎么有时用MsgBox造成程序死了或自动退出,而且是在编译成EXE时才成这样,在调试时又不出现这中情况。
那位遇到过,给个解决办法
...全文
367 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
不明LZ在说什么
回复



  那句SQL看了头皮发麻~~


 
回复
cbm6666 2008-04-09
我晕啊.....这样子写代码, 牛....我也服了, 越看头越麻..............

设计时期的路径是在 ?:\Program Files\Microsoft Visual Studio\VB98

你编译成 exe 后是在那里运行的 ? 检查一下你的路径吧.

虽然没有条件可以测试你的代码, 而且代码也看不下去了, 但可以10000% 肯定,错不在 Msgbox
回复
-晴天 2008-04-09
应该不是MSGBOX的事情.
回复
qixingl 2008-04-09
我还发现把MsgBox拿到if 外面就好了,放在里面就不行
回复
qixingl 2008-04-09
Private Sub SearchLatentContact(sContactID As String)

Dim sSql As String
Dim Ret As Long
Dim sXml As String
Dim i As Integer
' Dim sTemp As String

On Error Resume Next

'2008-1-28 潜在界面增加“沟通过程”,多选,内容如下6项
sSql = "select latentcontact.contactid,latentcontact.name,latentcontact.sex,latentcontact.note,product.scode,latentcontact.result,latentcontact.reason,latentcontact.realcontactid,product.prodname,product.recid,latentcontact.question,latentcontact.communication1,latentcontact.communication2,latentcontact.communication3,latentcontact.communication4,latentcontact.communication5,latentcontact.communication6 " & _
"From latentcontact, latentproduct,product " & _
"where latentcontact.contactid = latentproduct.contactid and latentproduct.prodid = product.recid and product.recid = (select min(prodid) From latentproduct where latentproduct.contactid = latentcontact.contactid) " & _
"and latentcontact.contactid='" & sContactID & "' "
Call ClearedData(20)

edPdata(0).sName = "NAME"
edPdata(0).sValue = sSql
edPdata(0).iType = iaUserData

sXml = oIAApp.CreateRequest("ExecSQL", edPdata)
If Len(sXml) <= 0 Then
Exit Sub
End If
Ret = tcpClient.CSAP_Call(sXml) '发送请求
If AnalyRes(Ret) = 1 Then '分析请求返回的结果: 0 成功,1 失败
Exit Sub
End If
Call tcpClient.GetData(sXml)
If oIAApp.AnalyXML(sXml) = iaTransSuccess Then
Call oIAApp.GetColAndRowNumber(iColnum, iRownum)
If iRownum > 0 Then

Else
MsgBox "没有检索到潜在客户信息!"
End If
End If

Call SearchLatentPhone(sContactID)

If Customer.CONTACT.ContactID <> "" Then
Call SearchAllContact(Customer.CONTACT.ContactID, iCurContact)
End If

End Sub
回复
cbm6666 2008-04-09
"代码已经检查好多遍了" 观念或思路不对看百遍与看一遍又有啥区别 ?

把代码贴出来看看吧.
回复
波导终结者 2008-04-09
换种编译模式,比如P-Code试试,或者改下MsgBox的参数,比如只有msgbox "ddd"试试,缩小范围。
真不行就用调试器载入试试。
回复
舉杯邀明月 2008-04-09
没遇到过这样的现象。
回复
qixingl 2008-04-09
代码已经检查好多遍了,而且只是在编译好后才出现,在VB6.0环境调试没问题,正常弹出MsgBox,在EXE下走到这就死了
回复
dabie 2008-04-09
因该是代码问题,这个只能自己慢慢找原因
回复
相关推荐
发帖
VB基础类
创建于2007-09-28

7489

社区成员

VB 基础类
申请成为版主
帖子事件
创建了帖子
2008-04-09 04:32
社区公告
暂无公告