首页 PHP 库 其它类库 Ratchet-Web的套接字库
Ratchet-Web的套接字库
套接字的编程步骤
在使用之前须链接库函数:工程->设置->Link->输入ws2_32.lib,OK!
SOCKET sockSrv=socket(AF_INET,SOCK_STREAM,0);//创建套接字(socket)。
SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY);//转换Unsigned short为网络字节序的格式
addrSrv.sin_family=AF_INET;
addrSrv.sin_port=htons(6000);
客户端代码如下:
#include <Winsock2.h>
#include <stdio.h>
void main()
{
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 1, 1 );
err = WSAStartup( wVersionRequested, &wsaData );加载套接字库
if ( err != 0 ) {
return;
}
if ( LOBYTE( wsaData.wVersion ) != 1 ||
HIBYTE( wsaData.wVersion ) != 1 ) {
WSACleanup()( );
return; 
}
SOCKET sockClient=socket(AF_INET,SOCK_STREAM,0);创建套接字(socket)。
SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");
addrSrv.sin_family=AF_INET;
addrSrv.sin_port=htons(6000);
connect(sockClient,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));向服务器发出连接请求(connect)。
char recvBuf[100];和服务器端进行通信(send/recv)。
recv(sockClient,recvBuf,100,0);
printf("%s\n",recvBuf);
send(sockClient,"This is lisi",strlen("This is lisi")+1,0);
closesocket(sockClient);关闭套接字。
WSACleanup()();//必须调用这个函数清除参数
}


#
免责声明

本站所有资源均由网友贡献或各大下载网站转载。请自行检查软件的完整性!本站所有资源仅供学习参考。请不要将它们用于商业目的。否则,一切后果由您负责!如有侵权,请联系我们删除。联系方式:admin@php.cn

相关文章

数据库连接字符串解析的正则表达式 数据库连接字符串解析的正则表达式

07 Jun 2016

最近在写一个Windows Mobile的小程序,其中需要访问数据库,数据库连接字符串大致如下: Data Source=Zongsoft.MAS.sdf;Password=xxxxxx;Persist Security Info=True 其中的 Data Source 部分指定了数据库文件的名称,但是当使用 DbConnection.Open() 方法进

PHP中的Web套接字 PHP中的Web套接字

26 May 2023

PHP是一种广泛使用的开源编程语言,主要用于Web开发。在PHP中,套接字是指一种网络协议,用于在应用程序之间传输数据。在Web开发中,Web套接字是一种很重要的技术。Web套接字是一种允许Web服务器与客户端之间建立连接并在其之间传递数据的技术。通过Web套接字,服务器可以监听来自客户端的请求并对其做出响应。这种技术允许开发人员在Web应用程序中创建动态网

linux中的套接字文件是什么意思 linux中的套接字文件是什么意思

19 Jul 2023

Linux中的套接字文件是一种特殊类型的文件,用于实现进程间的通信,其作用有:1、提供一种进程间的双向通信机制,可以通过套接字文件进行数据交换和通信;2、用于网络通信,是建立网络连接的一种方式;3、在服务器端应用程序开发中,与客户端进行通信,并处理请求。

为什么我通过 TCP 的 PDO 连接失败,并出现引用 Unix 套接字的'没有这样的文件或目录”错误? 为什么我通过 TCP 的 PDO 连接失败,并出现引用 Unix 套接字的'没有这样的文件或目录”错误?

02 Nov 2024

警告:通过 TCP 的 PDO 连接因没有此类文件或目录而失败 (unix:///tmp/mysql.sock) 在我们的编码工作中,它不是......

oracle 在本地查询远程数据库的方法,如何组合远程链接字符串 oracle 在本地查询远程数据库的方法,如何组合远程链接字符串

07 Jun 2016

方法如下: 第一、创建远程链接的link: create public database like linkorcl(创建的link名称) connect to zhang(用户名) identified by xxxx(密码) using '111.111.1.1:1521/orcl'(远程数据库ip和数据库名称); 其他均为关键字 第二、使用创建的li

maven仓库类型有哪些 maven仓库类型有哪些

04 Jan 2024

maven仓库类型:1、本地仓库;2、远程仓库;3、中央仓库;4、私服仓库;5、其他公共远程仓库。详细介绍:1、本地仓库,是存储在本地磁盘上的仓库,它是默认的仓库类型;2、远程仓库,是存储在网络上的仓库,可以由中央仓库、私服仓库和其他公共远程仓库等组成;3、中央仓库,是由Maven团队维护的远程仓库,它包含了世界上大部分流行的开源项目的构件;4、私服仓库等等。

See all articles