天想使用pb10来操作socket函数,

在这里写个测试代码,以作备用。

PowerBuilder 测试代码:

API函数声明

FUNCTION Long WSAStartup ( Integer wVersionRequired, REF WSADATA lpWSAData) LIBRARY "ws2_32.dll" ALIAS FOR "WSAStartup;ansi"
FUNCTION Long WSACleanup( ) LIBRARY "ws2_32.dll"
FUNCTION Long bind ( Long s, REF sockaddr addr, Long namelen) LIBRARY "ws2_32.dll" ALIAS FOR "bind;ansi"
FUNCTION Long socket ( Long af, Long lType, Long protocol) LIBRARY "ws2_32.dll" ALIAS FOR "socket;ansi"
FUNCTION Long wsconnect ( Long s, REF SOCKADDR_IN name, Long namelen) LIBRARY "ws2_32.dll"  ALIAS FOR "connect;ansi"
FUNCTION Long wsrecv( Long s, ref String buf, Long lLen, Long flags) LIBRARY "ws2_32.dll" ALIAS FOR "recv;ansi"
FUNCTION Long closesocket ( Long s) LIBRARY "ws2_32.dll" ALIAS FOR "closesocket;ansi"
FUNCTION Long wssend ( Long s, String buf, Long lLen, Long flags) LIBRARY "ws2_32.dll" ALIAS FOR "send;ansi"
FUNCTION Integer htons ( Integer hostshort) LIBRARY "ws2_32.dll" LIBRARY "ws2_32.dll" ALIAS FOR "htons;ansi"
FUNCTION Long inet_addr (   String cp) LIBRARY "ws2_32.dll" ALIAS FOR "inet_addr;ansi"
 
PB测试代码

wsadata ws
 sockaddr addr
 
 
 if bStart = true then return
 
 bStart = true
 
 //初始socket
 WSAStartup(258,ws)
 ulong sockClient
 
 
sockClient=socket(2,1,0);// AF_INET ..tcp连接
    //初始化连接与端口号
SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr= inet_addr("127.0.0.1");//本机地址,服务器在本机开启
addrSrv.sin_family=2;
addrSrv.sin_port= htons(6000);// 设置端口号
 
//连接到服务器
wsconnect(sockClient, addrSrv,16);//连接服务器
 
//接收数据
string  recvBuf;
recvBuf = space(500)
WsRecv(sockClient,recvBuf,500,0);//接受数据
lb_1.additem(string(now(),'hh:mm:ss') + " " + string(recvbuf))
 
//发送数据
string data
data =   string(now(),'hh:mm:ss') +" " + sle_1.text
WsSend(sockClient,data,lena(data)   ,0);//发送数据
closesocket(sockClient);//关闭连接
 
//退出socket
WSACleanup();
      
      
bStart = false


————————————————
 Powerbuilder10.5调用socket-C++文档类资源-CSDN下载

Powerbuilder 使用Socket函数发送数据相关推荐

  1. C# Socket tcp 发送数据大小问题

    TCP/IP是可靠性传输协议,它能保证数据能按顺序的方式到达目的地.看到以上描述在写TCP/IP应用的时候似乎就可以放心了,只要程序不出意外就数据输传就是正确.但最近在做一个文件传输工作的时候确得到的 ...

  2. matlab用socket线程发送数据,使用Python Twisted和Autobahn从Matlab通过WebSocket发送JSON数据...

    我正在尝试创建一个从Matlab到WebSocket流JSON帧的连接.我用下面的代码测试了我的python安装和twisted.在 工作实例 Matlab代码 示例驱动程序代码,它使用JSONlab ...

  3. linux非阻塞的socket发送数据出现EAGAIN错误的处理方法

    一.非阻塞socket 非阻塞套接字是指执行此套接字的网络调用时,不管是否执行成功,都立即返回.比如调用recv()函数读取网络缓冲区中数据,不管是否读到数据都立即返回,而不会一直挂在此函数调用上.在 ...

  4. php socket 多次发送,php模拟socket 多次发送数据的实现方法

    php模拟socket 多次发送数据的实现 方法 表四:Socket函数 函数名描述 socket_accept() 接受一个Socket连接 socket_bind() 把socket绑定在一个IP ...

  5. php socket发数据打印,PHP向socket服务器收发数据的方法

    这篇文章主要介绍了PHP向socket服务器收发数据的方法,分析了socket收发数据的方法,并介绍了socket常用函数,需要的朋友可以参考下 本文实例讲述了PHP向socket服务器收发数据的方法 ...

  6. php socket 函数介绍

    php socket相关函数: ------------------------------------------------------------------------------------ ...

  7. linux下用C语言实现TCP/IP服务器与客户端互相发送数据的socket编程

    linux下用C语言实现TCP/IP服务器与客户端互相发送数据的socket编程 server.c #include <sys/stat.h>#include <fcntl.h> ...

  8. ActionScript接收socket服务器发送来的数据

    原文地址:http://www.asp119.com/news/2009522181815_1.htm 从socket中接收数据的方法取决于你使用socket类型,Socket和XMLSocket都可 ...

  9. java使用Socket类接收和发送数据

    java使用Socket类接收和发送数据 网络应用分为客户端和服务端两部分,而Socket类是负责处理客户端通信的Java类.通过这个类可以连接到指定IP或域名的服务器上,并且可以和服务器互相发送和接 ...

最新文章

  1. linux查看日志的几种命令,Linux查看日志三种命令(转载)
  2. 天玥运维安全网关默认密码_Soul网关发布全新架构V2.2.0,让高性能网关变得如此简单
  3. [转]Visual Studio 项目类型 GUID 清单
  4. java 初级编程题_java基础经典编程题
  5. 软件开发如同木匠做桌子
  6. LintCode 69---二叉树的层次遍历
  7. 移动硬盘计算机限制打不开,可移动磁盘打不开,教您移动硬盘打不开怎么办
  8. NTC热敏电阻-阻值温度计算
  9. Evision显示器无法设置1440*900分辨率的问题解决
  10. 你为你的机会准备了什么
  11. js实现图片裁剪效果
  12. 2018年Oracle官网下载Oracle 11g安装包
  13. php大华视频监控接入,大华摄像头实时视频接入Demo
  14. 求解非线性方程组的牛顿法c语言,牛顿下山法求解非线性方程(组)(C实现)...
  15. easy_x是实现钟表
  16. 我的编程奋斗历程[四部曲之三]-成为金子篇
  17. linux centos 7 系统性能查询、DHCP租期信息查询、网络五元组
  18. discuz!内置代码 (收藏)
  19. 6.1 ASP.NET Core Web 入门
  20. 渗透测试培训必会工具xray扫描器被动扫描的使用(二)

热门文章

  1. teamviewer15安装不了_各位大佬,帮忙看下为什么老提示安装失败
  2. mysql必知必会第5版pdf_雍正荐书第十一期 | SQL入门经典教程2020全新升级!SQL必知必会(第5版)...
  3. ubuntu20.04 安装 WPS 2019
  4. 欧文分校计算机科学硕士项目,2020年加州大学欧文分校排名TFE Times美国最佳计算机科学硕士专业排名第36...
  5. list control双击事件编辑列表框
  6. 不允许sam账户和共享的匿名枚举_“不允许SAM帐户和共享的匿名枚举”是什么?...
  7. windows安装Cygwin以及swoole,方便本地开发仅支持linux环境的easyswoole。
  8. (译)一个完整的Django入门指南---第7部分
  9. SOEM协议栈代码研读笔记(二)
  10. Xcode10.1安装插件(包括了Xcode8.X、Xcode9.X)