Winsock学习笔记1:Winsock基本函数

Winsock服务端编程
本文介绍了一个简单的Winsock服务端编程实例,包括初始化Winsock、创建及绑定套接字、监听连接请求等步骤,并提供了发送与接收数据的函数示例。

 

ExpandedBlockStart.gif 代码
复制代码
var
  WSData: WSAData;
  ServerSocket: TSocket;
  ClientSocket: TSocket;
  LocalAddr: TSockAddrIn;
  ClientSocketAddr: TSockAddrIn;
  ClientSocketAddrLen: Integer;
  SocketMode: Integer;
begin
  
// 初始化Winsock
  WSAStartUp($ 202 , WSData);

  
// 创建套接字
  ServerSocket: =  Socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);

  
// 设置LocalAddr的参数
  LocalAddr.sin_family: =  AF_INET;    // IPV4族
  LocalAddr.sin_addr.S_addr: =  Inet_addr( ' 127.0.0.1 ' ); // 点分字符串格式的IP地址转换为互联网格式
  LocalAddr.sin_port: =  Htons( 1077 );  // Host To Net Short,主机字节顺序转为网络字节顺序
  
// 绑定本机IP地址、端口,绑定之前先设置好LocalAddr的参数
  Bind(ServerSocket, LocalAddr, SizeOf(LocalAddr));

  
// 设置Socket模式为非阻塞模式,0为阻塞,非0为非阻塞
  SocketMode: =   1 ;
  IoCtlSocket(ServerSocket, FIONBIO, SocketMode);

  
// 开始监听,最多同时监听5个连接
  Listen(ServerSocket,  5 );

  
// 接受连接,可以从ClientSocketAddr中获得客户端连接的一些信息,比如IP地址和端口
  ClientSocketAddrLen: =  SizeOf(TSockAddrIn);
  ClientSocket:
=  Accept(ServerSocket, @ClientSocketAddr, @ClientSocketAddrLen);

  
******************************************************************************
  
// 发送函数
  var
    Buf: array [
0 .. 10 ] of Char;
    SendLen: Integer;
  begin
    StrCopy(Buf, PChar(Edit1.Text));
    SendLen:
=  Send(ClientSocket, Buf, SizeOf(Buf),  0 );
  end;

  
// 接收函数

  var
    Buff: array [
0 .. 10 ] of Char;
    RecvLen: Integer;
  begin
    RecvLen:
=  Recv(AcceptSocket, Buff, SizeOf(Buff),  0 );
  end;
复制代码

 

 

1.上面的代码表示了服务端的基本流程和Winsock常用函数的用法,为了让代码看起来简单,没有处理异常的代码。

2.上面的代码不涉及Winsock I/O模式,起笔记作用而已,各种函数原型可查MSDN或者其它帮助文件。

 

原文:http://blog.youkuaiyun.com/dropme/archive/2009/09/08/4532127.aspx

乐播投屏是一款简单好用、功能强大的专业投屏软件,支持手机投屏电视、手机投电脑、电脑投电视等多种投屏方式。 多端兼容与跨网投屏:支持手机、平板、电脑等多种设备之间的自由组合投屏,且无需连接 WiFi,通过跨屏技术打破网络限制,扫一扫即可投屏。 广泛的应用支持:支持 10000+APP 投屏,包括综合视频、网盘与浏览器、美韩剧、斗鱼、虎牙等直播平台,还能将央视、湖南卫视等各大卫视的直播内容一键投屏。 高清流畅投屏体验:腾讯独家智能音画调校技术,支持 4K 高清画质、240Hz 超高帧率,低延迟不卡顿,能为用户提供更高清、流畅的视觉享受。 会议办公功能强大:拥有全球唯一的 “超级投屏空间”,扫码即投,无需安装。支持多人共享投屏、远程协作批注,PPT、Excel、视频等文件都能流畅展示,还具备企业级安全加密,保障会议资料不泄露。 多人互动功能:支持多人投屏,邀请好友加入投屏互动,远程也可加入。同时具备一屏多显、语音互动功能,支持多人连麦,实时语音交流。 文件支持全面:支持 PPT、PDF、Word、Excel 等办公文件,以及视频、图片等多种类型文件的投屏,还支持网盘直投,无需下载和转格式。 特色功能丰富:投屏时可同步录制投屏画面,部分版本还支持通过触控屏或电视端外接鼠标反控电脑,以及在投屏过程中用画笔实时标注等功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值