社区
C++ Builder
帖子详情
如何获得聊天室的IP及port?
tlc97
2000-08-31 11:01:00
各位高手帮个忙
...全文
154
2
打赏
收藏
如何获得聊天室的IP及port?
各位高手帮个忙
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tlc97
2000-09-01
打赏
举报
回复
FengSC:Netstart在哪用,好象我的机子里没这命令
FengSC
2000-08-31
打赏
举报
回复
连接上聊天室以后,用Netstart -nr 可以得到IP和Port。
基于TCP的网络
聊天室
的设计(一步一步教你CSocket网络编程)
里面包含
聊天室
的客户端和服务器端的源文件和一份完整的设计报告。 一、 系统概要 本系统能实现基于VC++的网络
聊天室
系统。有单独的客户端、服务器端。 服务器应用程序能够接受来自客户端的广播,然后向客户端发送本机的
IP
与服务端口,让客户端接入到服务器进行聊天,检测用户名是否合法(重复),服务器责接收来自客户端的聊天信息,并根据用户的需求发送给指定的人或所有人,能够给出上线下线提示。客户端能够发出连接请求,能编辑发送信息,可以指定发给单人或所有人,能显示聊天人数,上线下线用户等。 二、 通信规范的制定 服务请求规范: 服务器端: (1) 创建一个UDP的套接字,接受来自客户端的广播请求,当请求报文内容为“REQUEST FOR
IP
ADDRESS AND SERVER
PORT
”时,接受请求,给客户端发送本服务器TCP
聊天室
的端口号。 (2) 创建一个主要的TCP协议的套接字负责客户端TCP连接 ,处理它的连接请求事件。 (3)在主要的TCP连接协议的套接字里面再创建TCP套接字保存到动态数组里,在主要的套接字接受请求后 ,就用这些套接字和客户端发送和接受数据。 客户端: (1) 当用户按“连接”按钮时,创建UDP协议套接字,给本地计算机发广播,广播内容为“REQUEST FOR
IP
ADDRESS AND SERVER
PORT
”。 (2)当收到服务器端的回应,收到服务器发来的端口号后,关闭UDP连接。根据服务器的IP地址和端口号重新创建TCP连接。 故我思考:客户端一定要知道服务器的一个端口,我假设它知道服务器UDP服务的端口,通过发广播给服务器的UDP服务套接字,然后等待该套接字发回服务器TCP
聊天室
服务的端口号,IP地址用ReceiveForom也苛刻得到。 通信规范 通信规范的制定主要跟老师给出的差不多,并做了一小点增加: (增加验证用户名是否与
聊天室
已有用户重复,在服务器给客户端的消息中,增加标志0) ① TCP/
IP
数据通信 --- “聊天”消息传输格式 客户机 - 服务器 (1)传输“用户名” STX+1+用户名+ETX (2) 悄悄话 STX+2+用户名+”,”+内容+ETX (3) 对所有人说 STX+3+内容+ETX 服务器- 客户机 (0)请求用户名与在线用户名重复 //改进 STX+0+用户名+EXT (1)首次传输在线用户名 STX+1+用户名+ETX (2)传输新到用户名 STX+2+用户名+ETX (3)传输离线用户名 STX+3+用户名+ETX (4)传输聊天数据 STX+4+内容+ETX (注:STX为CHR(2),ETX 为CHR(3)) 三、 主要模块的设计分析 四、 系统运行效果 (要求有屏幕截图) 五、 心得与体会
简单的文字
聊天室
简单的文字
聊天室
启动服务器端后,根据提示打开客服端程序,输入服务端的
ip
+
port
,输入用户名即可登录,可以实现文字的在线实时聊天,提供用户在线数及上线下线通知等功能
UDP局域网
聊天室
C/S
这是一个Ubuntu环境下C语言编写的UDP局域网
聊天室
,包括客户端和服务器端,通过
ip
和
port
进行用户识别,文档包含了客户端和服务器端源代码,以及makefile文件。
基于MFC的
聊天室
步骤1. 创建一个基于对话框的应用程序MyChat 步骤2. 添加控件IDC_EDIT_RECV,IDC_
IP
ADDRESS1,IDC_EDIT_SEND,IDC_BTN_SEND,两个IDC_STATIC:发送数据,接收数据。 步骤3. 为控件IDC_
IP
ADDRESS1 增加Control变量 C
IP
AddressCtrl m_remote
IP
为控件IDC_EDIT_RECV 增加Value变量 CString m_strRecv 为控件IDC_EDIT_SEND 增加Value变量 CString m_strSend 步骤4. 在stdafx.h增加以下六行: #include "winsock2.h" #pragma comment(lib,"ws2_32.lib") #define MY
IP
"127.0.0.1" #define MY
PORT
6000 #define TO
IP
"127.0.0.1" #define TO
PORT
6000 在CMyChatApp::InitInstance()中增加对WSAStartup的调用。 步骤5. 增加CMyChatApp:: ~CMyChatApp(){WSACleanup();} 步骤6. 为CMyChatDlg增加成员变量private: SOCKET m_socket; 在CMyChatDlg::CMyChatDlg 中增加m_socket=0; 增加析构函数 CMyChatDlg::~CMyChatDlg() { if(m_socket) closesocket(m_socket); } 步骤7.增加函数。。。。。
基于Android的
聊天室
应用 ChatRoom 1.4
注意:之前上传的同类资源1.0、1.1、1.2、1.3版本有一些小问题,现在上传修改后的最新版本,各位请注意下载最新版的,主界面的
ip
地址和
port
端口号是我的一个服务器上的地址,可以正常连接 一、端点连接机制:基于客户端到服务器端的socket连接,在服务器端利用android系统提供的线程池处理用户的并发访问。 二、消息发送原理:在服务器端缓存所有当前在线用户,对于接收到的文字消息或语音消息循环发送到所有在线客户端。 三、消息发送格式:对于所有的发送消息,都包含一条标识行,用来标识该消息的类型(注册、登录、退出、普通消息、语音消息)。对于网络字节数据流,采用length+data的格式,因为基于socket打开的数据流,好像只有这种格式最可靠,不会出现各种莫名其妙的错误。 四、项目操作流程:项目分为服务器端和客户端。 1、服务器端:将服务器端代码导入ecl
ip
se中,打开服务器窗口界面,输入合适的端口号,点击启动按钮启动服务器。 2、客户端代码直接导入到ecl
ip
se中,安装部署即可运行,端口号及
IP
地址要与服务器端保持一致。 3、推荐测试方式可以用一台真机跟模拟器来实现信息的交互,前提是手机跟电脑必须是在同一个无线网路,请自行设置。 五、必须注意事项:以下几点是在运行项目时必须注意的,否则有些功能操作时就会报错。 1、对于模拟器端,发送语音消息会报异常,所以测试时需用真机发语音消息 2、在录制语音时,不同的设备支持的采样频率有所差别,如在录制声音时报错或没有声音出来,可修改audioRecord中的采样率,该值保存在常量当中。 六、这个纯属是自己作为一个接触android系统新手的练手项目,可以说一边查找资料、一边在慢慢摸索,弄了比较长时间,许多比较棘手的问题总算是解决了。如果你是一个新手,这个项目了解清楚了,可以说算是入门了,恭喜你可以进行android开发相关的工作了。最后界面上有一个问题,就是popuwindow里面的按钮单击后就不见了,比较影响美观哪,望谁有办法解决它,反正我是搞不定了 七、这个项目完成可不止十天哪,所以收10分不过分,如果你觉得很需要一个聊天类的应用参考实践一下,那这就是你所需要的,这只是一个一对多的聊天应用,当然你可以自己扩展成一对一的,其实就是再加一个页面就可以了,代码上稍作修改即可,发消息时传一个目标用户的ID而已。不多说了,这个项目如果有时间的话,我也会再做一些优化和修改,到时再发出来吧
C++ Builder
13,822
社区成员
102,680
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章