【源码】一个简单的TCP点对点聊天(可用于广域网/公网)
本帖最后由 美俪女神 于 2014-3-20 21:35 编辑某天心血来潮想学一下网络编程,于是坛主不惜逃课教我。。。
最后折腾了两天,弄好了。共享下源代码。
这个程序可以发送文字消息和文件(发送文件的话,直接输入文件所在路径。如果检测到“消息”是一个存在的文件的话,就会把文件的内容发送)。
但是发送文件只在局域网实用,在公网的话,只能发送小于PAGE_SIZE(4KB)的文件,文件所在路径是c:\tempfile.随机后缀名(类似于c:\tempfile.20010101121212)。
使用说明(如果失败则尝试关闭两台电脑的防火墙):
1.先运行server,输入“msg s 8000 0”
2.再运行client,输入“msg c x.x.x.x 8000”,x.x.x.x为server的IP地址(如果用于公网通信,则输入公网IP)
如果用于公网通信,则对server所在网络环境有一定要求:
1.独立IP(3G网卡、长城宽带等不行,VPS可以)
2.可以设置路由器的端口XXXX映射到服务器所在的内网IP(比如映射8000端口到192.168.1.100,192.168.1.100为服务器的内网IP)
最后说下,这个程序没有用太多WINDOWS API(WSA开头的几个API除外),应该可以方便移植到其它平台。代码在WINDOWS下可以直接编译为WIN32和WIN64程序,无任何特殊处理。 这个真心不错,它还让我发现了UDP的一个特性:你用sendto发送一个0字节数据包,recvfrom也能收到它。
这个细节我是看了你的实例才发现的 嘿嘿~网络初学者收下了~ 谢谢分享 顶一个。。。。。。。。。。。。。 冒昧的问问,你们都是自学的吗?
看什么书籍呢? 0x0208 发表于 2014-4-18 10:34
冒昧的问问,你们都是自学的吗?
看什么书籍呢?
那当然自学!没有哪个老师能教你! 收下了,试试看 厉害、、、 支持一下,正好研究Winsock API 虽然知道大概不知道细节 但感觉很牛逼的样子 :):):):):)厉害啊,学习了 自己也写了一个,就是局域网通信的时候总是有乱码,忠于可以有例子借鉴借鉴了{:soso_e100:}
如此好贴,必须支持~~~
如此好贴,必须支持~~~
页:
[1]