- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在POWERBUILDER中使用WINSOCK控件的方法,powerbuilder控件详解,winsock控件使用方法,winsock控件,winsock控件下载,vbwinsock控件,vbwinsock控件下载,winsock.ocx控件下载,cwinsock控件,vs2010winsock控件
在POWERBUILDER中使用WINSOCK控件的方法(一对一,UDP协议)
2011-01-18 10:36
(该程序是在pb10.5版本环境下编写)
一、在窗口中添加WINSOCK控件:
在应用中新开一个窗口,在窗口画板中点击controls--OLE菜单项,弹出Insert object窗口,单击
Insert control标签,从列表框中双击选定Microsoft Winsock control,将winsock的图标贴在窗口上。
在程序中该控件名称定为winsock_a(甲方)和winsock_b(乙方)。
二、设置信息输入输出文本框:
在窗口中增加一个按钮cb_1,两个单行文本框sle_1,sle_2,分别用于输入要发送的字符串和接受对方
发送的字符串。
三、设置通讯协议:
WINSOCK控件允许用户以UDP和TCP两种协议中任选一种进行通讯。
1.UDP协议设置:UDP协议是一种无连接的通讯协议,在通讯之前,需要绑定remotehost和remoteport
属性,如果需要双向通讯,还要设置localport属性。
在甲方(本机地址为:192.168.0.34)窗口的Open事件中加入如下语句:
winsock_a.object.protocol=1 //winsock通讯协议设为UDP协议 winsock_a.object.remotehost=192.168.0.29 //对方的ip地址 winsock_a.object.remoteport=6000 //对方的winsock通讯端口号 winsock_a.object.localport=6001 //本机的winsock通讯端口号 winsock_a.object.bind //绑定通讯协议?
在乙方(本机地址为:192.168.0.29)窗口的Open事件中加入如下语句:
winsock_b.object.protocol=1 //winsock通讯协议设为UDP协议 winsock_b.object.remotehost=192.168.0.34 //对方的ip地址 winsock_b.object.remoteport=6001 //对方的winsock通讯端口号 winsock_b.object.localport=6000 //本机的winsock通讯端口号 winsock_b.object.bind //绑定通讯协议?
需要注意的是:在server和client的ole控件的OLE CONTROL PROPERTIES需要填写项目,不能空(已经作出测试)
如图:
server:
client
无论采用哪种协议,都要在窗口的Close事件中加入如下语句:
if winsock_a/*或winsock_b*/.object.state 0 thenwinsock_a.object.close()end if?
否则可能第二次使用时发生异常问题
开始通讯
在按钮cb_1(caption属性设为‘发送’)的click事件中加入如下语句:
winsock_a.object.senddata(sle_1.text)?
在winsock_a/*或winsock_b*/控件的dataarrival事件中加入如下语句:
//接受到对方数据后string datastr1winsock_a/*或winsock_b*/.object.getdata(ref datastr1)sle_2.text=datastr1 //将数据字符串显示在文本框中
?
到此,编译一下,然后在两部电脑分别放server和client(同一局域网内),就可以进行简单的运行了。
您可能关注的文档
最近下载
- 思想政治学科教学新论七章 思想政治学科评价论.ppt VIP
- 2025江西南昌青山湖区城市管理和综合执法局招聘工作人员10人笔试参考题库附答案解析.docx VIP
- 04S519:小型排水构筑物.pdf VIP
- GB50017钢结构设计规范.pdf VIP
- 武汉文化投资发展集团有限公司招聘5名工作人员笔试备考试题及答案解析.docx VIP
- 2023全钒液流电池可靠性评价方法.pdf VIP
- [乐高LEGO 9686动力机械]第14课 摩天轮.pdf VIP
- 英语视听说4英语视听说IV教学大纲.pdf VIP
- 基根-《全球营销(第8版)》英文教辅-第4章.pptx VIP
- 基根-《全球营销(第8版)》英文教辅-第3章.pptx VIP
文档评论(0)