您的位置:首页 > 编程语言 > VB

[VB.NET]两个socket通讯问题,人在线等

2008-12-29 21:51 483 查看



<script type="text/javascript"><!--
google_ad_client = "pub-8333940862668978";
/* 728x90, 创建于 08-11-30 */
google_ad_slot = "4485230109";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

两个socket通讯问题,人在线等
我用tcplistener类写的一个监听程序,如果是PC端发来的测试信息,则接收正常.但如果是用下位机(单片机)发来的数据,则第一次发送后没有反应.(我用sniffer监视到了数据),必须要下位机第二次发送才能收到.
如果用MSDN上的socket异步的例子,虽然能正确监听到,但一些控制字符(比如 2B2B2B ,我不知道是不是控制字符)也会被收到,影响正常程序的控制.请问有什么办法?

另外一个小问题:我的监听程序服务端关闭时,使用了tcplistener.stop和thread.abort,但每次都有一个异常,要么是 正在结束进程 ,要么是 一个封锁操作被WSACancelBlockingCall的调用中断 ,请问该怎么解决?
__________________________________________________________________________
没人知道?还是没看到啊?自己顶一下吧
__________________________________________________________________________
第二个问题已经解决,方法见下面的帖子 http://community.csdn.net/Expert/TopicView3.asp?id=4891298 第一个问题,大家帮忙啊~~~
__________________________________________________________________________
你可以解析处理的时候判断包头,包体,根据包头里的content-length 来读包体
__________________________________________________________________________
顶.学习.
__________________________________________________________________________
现在主要是想通过Tcplistener来实现。
另外qiri07(俺家金毛de地位比俺高) 说的办法,如何实现?我怎么获得包头?
__________________________________________________________________________
自己顶一下吧...
__________________________________________________________________________
我记得我以前用VB6时也遇到过这种问题,后来是让客户端Send以后Doevents了一下服务器就收到了,你看看有没有参考价值

不过时间太久,不确定一定能解决啊!
__________________________________________________________________________
强烈关注
__________________________________________________________________________
呵呵,全部问题自己解决了.比想象中来的简单,是自己弄复杂了.
有时候发现一个人如果陷入了自己设计的圈子,就很难跳出去.这次还得感谢一个朋友,虽然他一点编程都不会(我说的可能有点过了,至少他会数控的编程o(∩_∩)o...哈哈),让我从新把程序自己写一次,换了个思路.
进来帮顶的朋友都送分,虽然不多,表表心意了
__________________________________________________________________________
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息