关于VB6远程连接数据库不耽误其他部件运行的问题,求教!

gss86905 2013-06-08 03:16:17
请教各位高手们个问题:最近用VB6做串行通讯,采用mscomm控件的oncomm触发接受。同时呢,还需要定时的远程上传数据到租用空间的SQL2000数据库中。问题如下:
1、假设远程上传采用ADO模式的话,远程连接肯定要慢一些,甚至在网络中断的情况下,连接出现假死状态,但是不能耽误MSCOMM的不停的接收数据,该如何写这个远程上传?

我搜索了一下,大概这么几种方法:
1、采用SQLDMO?没研究明白
2、调用一个写好的远程连接DLL执行?调用DLL的时候VB也是在等待DLL的返回状态吧,也是在耽误时间,是不是也会影响MSCOMM的接收?
3、采用ACTIVE X EXE?

谢谢各位帮忙!
...全文
176 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2013-06-14
  • 打赏
  • 举报
回复
只要别每执行一次SQL就连接断开一次数据库就行。
worldy 2013-06-09
  • 打赏
  • 举报
回复
引用 5 楼 gss86905 的回复:
[quote=引用 3 楼 worldy 的回复:] 你的意思是串口采集数据,通过网络将采集的数据远程上传,数据采集不能因为网络问题而中断,是这个意思吧 那估计得使用winsock,或者inet的异步模式,activex肯定会受通信影响的,当网络有问题时,线程会阻塞,数据采集将会中断
用winsock的话是不是需要在远程空间也写一个接收程序?我记得winsock貌似是两个程序的对接,针对这个项目的情况来说不太允许,只能将数据写入到数据库中。 inet的异步模式?麻烦详细说说? ACTIVE X DLL看来是走不通了,ACTIVE X EXE不知道行不行的通?貌似用这个的人很少,网上也差不到多少相关资料。 感谢您的回复![/quote] 是的,需要远程有接收和处理机制,既然不允许,给你建议个办法: 串口部分,做一个单独的程序,这个程序只负责控制串口,接收串口数据,然后,将数据写入到一个本地数据库中; 再做一个程序,专门负责和远程通信,将本地数据写入远程, 这样,或许你就能避开了VB单线程的限制
gss86905 2013-06-09
  • 打赏
  • 举报
回复
引用 4 楼 caozhy 的回复:
做不到,VB不支持多线程。这是VB的天生缺陷。
谢谢斑竹的回复! 那像这种情况该如何做?串口确实是在不停的采集数据,大概几百毫秒采集到一组,还得显示、判定、写入本地数据库等操作,就远程来说,写在VB本身内部肯定是不行的。但是远程上传是定时的上传,大概十分钟传递一次,单独架设一个程序?谢谢!
gss86905 2013-06-09
  • 打赏
  • 举报
回复
引用 3 楼 worldy 的回复:
你的意思是串口采集数据,通过网络将采集的数据远程上传,数据采集不能因为网络问题而中断,是这个意思吧 那估计得使用winsock,或者inet的异步模式,activex肯定会受通信影响的,当网络有问题时,线程会阻塞,数据采集将会中断
用winsock的话是不是需要在远程空间也写一个接收程序?我记得winsock貌似是两个程序的对接,针对这个项目的情况来说不太允许,只能将数据写入到数据库中。 inet的异步模式?麻烦详细说说? ACTIVE X DLL看来是走不通了,ACTIVE X EXE不知道行不行的通?貌似用这个的人很少,网上也差不到多少相关资料。 感谢您的回复!
gss86905 2013-06-09
  • 打赏
  • 举报
回复
非常感谢worldy ! 单独建立一个程序这个思路看来恐怕是唯一的解决办法了,谢谢!
threenewbee 2013-06-08
  • 打赏
  • 举报
回复
做不到,VB不支持多线程。这是VB的天生缺陷。
worldy 2013-06-08
  • 打赏
  • 举报
回复
你的意思是串口采集数据,通过网络将采集的数据远程上传,数据采集不能因为网络问题而中断,是这个意思吧 那估计得使用winsock,或者inet的异步模式,activex肯定会受通信影响的,当网络有问题时,线程会阻塞,数据采集将会中断
gss86905 2013-06-08
  • 打赏
  • 举报
回复
抱歉,您没看明白,串口不停的接受数据。同时,通过网络传到远程空间。。。
worldy 2013-06-08
  • 打赏
  • 举报
回复
现在还有使用串口来做远程通信的?干嘛不使用宽带?

1,502

社区成员

发帖
与我相关
我的任务
社区描述
VB 网络编程
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧