读书人

C#基于socket的聊天工具毋宁源码

发布时间: 2012-12-24 10:43:13 作者: rapoo

C#基于socket的聊天工具与其源码
本例为家猫本人原作,

做此工具时刚从学校毕业,那会比较爱学习,所以此工具代码有点点乱,

此工具本是基于局域网的聊天工具,无需建立服务端,直接通过协议同步网内用户

后来扩展了外网功能,后面会讲到

主要是用于公司内部交流用,集成了涂鸦,表情,截图等简单功能

当启动nettalk工具后,

可以在菜单个人设置中简单地设置下名称和分组

C#基于socket的聊天工具毋宁源码

下面是涂鸦效果图:

C#基于socket的聊天工具毋宁源码


功能都比较简单,,可以用来学习,,用到的知识点还是很广的

局域网聊天很简单,服务端都不用启用,直接每个人启动客户端即可



下面来说说怎么部署到外网:
首先得有一台外网能访问的机器,一般家庭网络的做法是通过路由器映射一个端口到您当做服务器的IP上,我默认用的端口是:60000

你可以改为你需要的端口,如果改端口得到server端的app.config中的配置改为你的端口,
port为服务端采用的端口
server就是您的外网IP,我这里用的是花生壳域名,因为我没有静态IP

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
</connectionStrings>
<appSettings>
<!-- 是否自动启动并开启服务器-->
<add key="AUTOSTART" value="false"/>
<!--是否对本地用户监听-->
<add key="LISTENLOCAL" value="false"/>
<!--是否为二级服务器-->
<add key="LEVELSERVER" value="false"/>
<!--如果为二级服务器此地址才会有效,为主服务器的地址-->
<add key="SERVER" value="haofefe.gicp.net"/>
<!--如果为主服务器,此项为主服务器的监听端口,,如果为二级服务器,此端口为远程主服务器的端口,与SERVER项一起使用-->
<add key="PORT" value="60000"/>
</appSettings>
</configuration>

配置好服务端后启动程 序:

C#基于socket的聊天工具毋宁源码

点控制菜单中的启动服务即可

成功启动后,,其它客户端就可以登 录此服务端了
外网需要注册用户,,在服务端工具菜单有注册用户。。。暂不提供客户端注册,大家可以自已扩展

下面说说客户端怎么连接服务端:
C#基于socket的聊天工具毋宁源码

其它的跟局域网一样设置,只要从工具的选项菜单中,点击网络设置,勾选外网用户,,

填上服务器IP或域名,

端口就是您映射到服务器的和服务端app.config中设置的端口

确定重启netTalk聊天工具

从服务端新增一个用户:jiamao 密码:123456

打开聊天工具,,从菜单中选择登 录:

输入jiamao 123456

登 录就可看到如下效果:

C#基于socket的聊天工具毋宁源码

如果有内网用户则会在内网用户栏中显示,,外网的显示在外网栏

源码下载:http://www.jiamaocode.com/Pros/1204.html
[解决办法]
有技术,可以学习
[解决办法]
真的做的挺好啊
[解决办法]
谢谢LZ的分享.值得学习一下.
[解决办法]
非常好
有技术学习了
[解决办法]
至少开源是种精神.

读书人网 >C#

热点推荐