vb 奇怪的问题问题?

共有 522 人关注过本帖
标题:[求助]很奇怪的一个问题
等 级:新手上路
&&问题点数:0&&回复次数:9&&&
[求助]很奇怪的一个问题
我现在在用VB编一个GSM模块与电脑通信的界面,可是我在用下面这段程序时,只有在cubf=mscomm1.input处设置中断后才能在mscomm1.input输入有值时执行蓝色字语句,但是当不设断点,全速运行时,mscomm1.input输入明明是有值得可是却执行了绿色字体的语句,查了很有的错不知道为什么,哪位高手可以指点一下吗?谢谢啦.Public Sub initialize()Dim cbuf$MSComm1.Output = "at" & vbCrFor i = 0 To 100Next icbuf = MSComm1.InputIf cbuf = "" Then
MsgBox "串口初使化失败,请选择正确的串口", vbOKOnly + vbInformation, "提示信息"
ElseIf InStr(cbuf, "OK") Then
MSComm1.Output = "at+csca=+0" & vbCr
For i = 0 To 100
If InStr(cbuf, "ERROR") Then
MsgBox "串口初使化失败,请确认是否装入SIM卡", vbOKOnly + vbInformation, "提示信息"
MSComm1.Output = "at+cpms=" & Chr(34) & "mt" & Chr(34) & vbCr
For i = 0 To 100
MSComm1.Output = "at+cnmi=2,2,0,0,1" & vbCr
MSComm1.RThreshold = 1
搜索更多相关主题的帖子:
等 级:贵宾
威 望:21
帖 子:1231
专家分:85
那你就让程序在执行cbuf = MSComm1.Input之前先等一段时间。可能是因为MSComm1还没来得及返回数据你就开始检测了。
等 级:新手上路
帖 子:39
当时cstr(cbuf)的值是不是也等于&& 呢?
等 级:贵宾
威 望:62
帖 子:2721
延时的问题. 接收mscomm的输出是需要时间的,虽然很短 但是程序还是一下就跳过去了.你设置了断点 等待时间就足够接收到数据了.你可以来个sleep(100) 或者做个空循环等一下.
等 级:新手上路
我在cbuf = MSComm1.Input前已经延时过了哦.我开始也以为是延时的问题,可是不管我把延时的时间设为多长,都没有用哦
等 级:贵宾
威 望:21
帖 子:1231
专家分:85
For i = 0 To 100Next i你不会说你就是用这个来延时吧?
等 级:新手上路
等 级:新手上路
我把for徇环改成了使用Windows API函数timeGetTime()面的延时函数,可是还是不行啊savetime = timeGetTimeWhile timeGetTime & savetime + 100 '循环等待DoEvents '转让控制权,以便让操作系统处理其它的事件Wend
等 级:贵宾
威 望:21
帖 子:1231
专家分:85
用Sleep吧。试试Sleep 500
等 级:新手上路
还是不行啊.应该不是延时的问题
版权所有,并保留所有权利。
Powered by , Processed in 0.030544 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights Reserved在线时间25 小时威望0 金钱61 人气0 最后登录注册时间帖子精华0积分274阅读权限20UID105030
中级程序员, 积分 274, 距离下一级还需 1726 积分
擂点0 人气0 威望0 注册时间精华0帖子
我一号GRID的作用就是:在gird里面单击,然后输入内容,再回车就弹出下一步的窗体
二号GRID的作用就是:显示在一号GRID中的内容,修改GRID内容或者新增内容就单击那个GIRD,然后输入内容再回车就弹出下一步的窗体
如果二号GRID用KEYDOWNEDIT事件的话,就要输入完后再双击那格再回车才能响应事件,这不是很符合操作习惯吧~
在线时间682 小时威望390 金钱1681 人气6 最后登录注册时间帖子精华1积分8272阅读权限150UID76544
网络程序员, 积分 8272, 距离下一级还需 7728 积分
擂点0 人气6 威望390 注册时间精华1帖子
你少个方法而已!
Private Sub vsGrid_EnterCell()
& & If mbGridFalse = False Then Exit Sub
& & If vsgrid.Row = 0 Then Exit Sub
& & If vsgrid.Row & 0 Then
& && &&&Select Case vsgrid.Col
& && &&&Case cstTurnNum, cstShohinCd
& && && && &vsgrid.CellBackColor = vbYellow
& && && && &vsgrid.EditCell
& && &&&Case Else
& && &&&End Select
& & End If
你应该这个里加上代码就可以了!
screen.width*0.7) {this.resized= this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized= this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {} else {window.open('/attachments/month__8vKaGtszqfa3.gif');}" onmousewheel="return imgzoom(this);" alt="" />
不做开发了,彻底改行做销售了!
在线时间25 小时威望0 金钱61 人气0 最后登录注册时间帖子精华0积分274阅读权限20UID105030
中级程序员, 积分 274, 距离下一级还需 1726 积分
擂点0 人气0 威望0 注册时间精华0帖子
原帖由 lyjun_311 于
13:29 发表
你少个方法而已!
Private Sub vsGrid_EnterCell()
& & If mbGridFalse = False Then Exit Sub
& & If vsgrid.Row = 0 Then Exit Sub
& & If vsgrid.Row & 0 Then
& && &&&Select Case vsgrid.Col
不行啊,这个是怎么用的?直接复制过去?我改成了我的MSHFLEXGRID名MSH,用KEYDOWN事件,但还是不行啊
在线时间682 小时威望390 金钱1681 人气6 最后登录注册时间帖子精华1积分8272阅读权限150UID76544
网络程序员, 积分 8272, 距离下一级还需 7728 积分
擂点0 人气6 威望390 注册时间精华1帖子
Private Sub vsGrid_BeforeRowColChange(ByVal OldRow As Long, ByVal OldCol As Long, ByVal NewRow As Long, ByVal NewCol As Long, Cancel As Boolean)
& & With vsGrid
& && &&&If .Row = 0 Then Exit Sub
& && &&&If NewCol = constNum Then
& && && && &If objCommon.NullToNumber(.TextMatrix(OldRow, constQty)) & objCommon.NullToNumber(.TextMatrix(OldRow, constNum)) Then
'& && && && && & MsgBox fncGetMsgNmF(Error_Msg25040_09), vbInformation + vbOKOnly, ctlHead.Title
& && && && && & MsgBox &库存数量不能小于转移数量&, vbInformation + vbOKOnly
& && && && && & Cancel = True
& && && && && & vsGrid.EditCell
& && && && && & Exit Sub
& && && && &End If
& && && && &Cancel = False
& && &&&Else
& && && && &Cancel = True
& && &&&End If
& & End With
Private Sub VsGrid_GotFocus()
& & vsGrid_EnterCell
& & vsGrid.TabBehavior = flexTabCells
Private Sub vsGrid_EnterCell()
& & If vsGrid.Row = 0 Then Exit Sub
& & If vsGrid.Col = constNum Then
& && &&&vsGrid.CellBackColor = vbYellow
& && &&&vsGrid.EditCell
& & End If
Private Sub vsGrid_KeyDownEdit(ByVal Row As Long, ByVal Col As Long, KeyCode As Integer, ByVal Shift As Integer)
& & If KeyCode = vbKeyReturn Then
& && &&&KeyCode = 0
& && &&&If vsGrid.Row = vsGrid.Rows - 1 Then
& && && && &cmdEnter.SetFocus
& && &&&Else
& && && && &vsGrid.Row = vsGrid.Row + 1
& && &&&End If
& & End If
Private Sub vsGrid_LeaveCell()
& & If vsGrid.Row = 0 Then Exit Sub
& & If vsGrid.Col = constNum Then
& && &&&vsGrid.CellBackColor = vbWhite
& & End If
Private Sub VSGrid_LostFocus()
& & vsGrid_LeaveCell
& & vsGrid.TabBehavior = flexTabControls
screen.width*0.7) {this.resized= this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized= this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {} else {window.open('/attachments/month__8vKaGtszqfa3.gif');}" onmousewheel="return imgzoom(this);" alt="" />
不做开发了,彻底改行做销售了!
在线时间25 小时威望0 金钱61 人气0 最后登录注册时间帖子精华0积分274阅读权限20UID105030
中级程序员, 积分 274, 距离下一级还需 1726 积分
擂点0 人气0 威望0 注册时间精华0帖子
这么一个KEYDOWN事件就要变得这么复杂??????
在线时间17 小时威望0 金钱93 人气0 最后登录注册时间帖子精华0积分207阅读权限20UID243840
中级程序员, 积分 207, 距离下一级还需 1793 积分
擂点0 人气0 威望0 注册时间精华0帖子
学习了呵呵VB6一个奇怪的问题
[问题点数:20分,结帖人6742]
VB6一个奇怪的问题
[问题点数:20分,结帖人6742]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2011年5月 VB大版内专家分月排行榜第一2011年4月 VB大版内专家分月排行榜第一2011年3月 VB大版内专家分月排行榜第一2011年2月 VB大版内专家分月排行榜第一2011年1月 VB大版内专家分月排行榜第一2010年12月 VB大版内专家分月排行榜第一2010年11月 VB大版内专家分月排行榜第一2002年2月 VB大版内专家分月排行榜第一2002年1月 VB大版内专家分月排行榜第一
2002年3月 VB大版内专家分月排行榜第三
2010年12月 VB大版内专家分月排行榜第二2010年11月 VB大版内专家分月排行榜第二2009年7月 VB大版内专家分月排行榜第二
2011年12月 VB大版内专家分月排行榜第二2011年9月 VB大版内专家分月排行榜第二2011年8月 VB大版内专家分月排行榜第二2010年8月 VB大版内专家分月排行榜第二2009年9月 VB大版内专家分月排行榜第二
2012年2月 VB大版内专家分月排行榜第三2011年11月 VB大版内专家分月排行榜第三2011年3月 VB大版内专家分月排行榜第三2011年1月 VB大版内专家分月排行榜第三2010年3月 VB大版内专家分月排行榜第三2010年2月 VB大版内专家分月排行榜第三2009年10月 VB大版内专家分月排行榜第三2009年8月 VB大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。查看: 1835|回复: 5
急!vb与oracle的奇怪问题!
论坛徽章:0
我用vb做了一个程序,连接oracle数据库。在vb里试运行一切正常,但编译成可执行文件后,运行报错:
& &运行时错误' **********() '
& &[Microsoft][ODBC driver for Oracle][Oracle]ORA-06413:连接未打开
最奇怪的这个程序的以前版本运行都很正常,重新编译也没问题,而且新版本所做的改动也没有数据库方面的!急!盼指教!
论坛徽章:3
这个错误一般有两种情况
1.TRANSACTION不能完成,DTC的事!
& &看到ORACLE机器的DNS是不是通的,不成在TNSNAMES.ORA里用IP
2.MDAC有问题,更新到MDAC2.8
论坛徽章:2
vb连oracle,建议使用oracle提供的oo4o。
论坛徽章:0
怪就怪在以前能用啊!
怪就怪在以前能用啊!前一个版本的现在还能用!数据库连接字符串根本没做改动啊!
另:tns没问题,是用的ip。手头只有mdac2.7,重新装了一遍,还是不行
论坛徽章:19
Re: 急!vb与oracle的奇怪问题!
Could&&you&&upload&&your&&vb&&code ?& &I&&think It's enough&&when
we can see the&&part& &which&&deal with&&connecting to&&database.
In&&addition,&&You&&should&&make&&sure&&that&&all other&&applications
can&&connect&&to&&database successfully.
论坛徽章:0
数据库连接字符串:
Global Conn As New ADODB.Connection
Sub Main()
&&Dim connstr As String
& &connstr = &Provider=& & _
& && && && && && & &Data Source=& & _
& && && && && && & &User Id=& & _
& && && && && && & &Password=&
&&Conn.Open connstr
&&formMain.Show
win2000 ad server , mdac2.7
以前的版本能用的!而且没改过数据库连接方面的
itpub.net All Right Reserved. 北京皓辰网域网络信息技术有限公司版权所有    
 北京市公安局海淀分局网监中心备案编号: 广播电视节目制作经营许可证:编号(京)字第1149号

我要回帖

更多关于 奇怪的问题 的文章

 

随机推荐