├── .gitignore ├── FTP软件filezilla客户端和服务器全套源码.md ├── MOBA游戏最后一战.md ├── README.md ├── imgs ├── 123.png ├── 12344.png ├── 20170707102116196.png ├── 20170707102134921.png ├── 20170707102159996.png ├── 20170707102225208.png ├── 20170707102237518.png ├── 20170707103535158.png ├── 20180512131409884.png ├── 20180512131422876.png ├── 20180512131436481.png ├── 20180512131458583.png ├── 2018051213151714.png ├── 20180512131534814.png ├── 456.png ├── 50fe0ef8dcd3a8b859b20af733603854.png ├── 6677.png ├── 70.png ├── 789.png ├── 888.png ├── 97e7e0b088e225846736604a5c6df025.png ├── Center.png ├── a90dc472c2fcf392856ad17a7782e79f.png ├── fd0b5bebe4a651495526bbe0c153937e.png └── wechat.jpg ├── 电驴源码.md └── 金山卫士源码.md /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | -------------------------------------------------------------------------------- /FTP软件filezilla客户端和服务器全套源码.md: -------------------------------------------------------------------------------- 1 | # FTP软件 filezilla 客户端和服务器全套源码 2 | 3 | filezilla是一款高性能ftp/sftp文件工具,关于它的具体的介绍可参见其官网:https://www.filezilla.cn/。 其原作者是Tim Kosse (tim.kosse@filezilla-project.org)。 4 | 5 | 大概10年前我从校园网ftp资源时无意中接触到这款软件的客户端之后,其强大的功能和流畅的性能让我一直使用至今。即使在今天,我的开发环境已经换成[Linux](http://lib.csdn.net/base/linux),我仍然使用它在 Windows 与 [Linux](http://lib.csdn.net/base/linux) 服务器目录互传文件资源,另外像qq这些即时通讯软件不支持大于4G的文件传输,filezilla也能够支持的。 6 | 7 | 8 | 9 | 原作者的开发环境使用的是跨平台交叉编译的,对于我这种习惯使用Visual Studio开发windows程序的人来说,实在不方便;而直接下载的filezilla server也无法直接编译,经过我的修改也能使用VS进行编译和调试。 10 | 11 | 软件界面如下: 12 | 13 | 客户端: 14 | 15 | ![img](imgs/Center.png) 16 | 17 | ![img](imgs/123.png) 18 | 19 | ![img](imgs/456.png) 20 | 21 | 22 | 23 | 服务器端包括,两个程序,一个是以windows服务形式运行的filezillaserver,另外一个是对服务器端连接的用户账号、共享目录等信息进行控制的filezillaserverinterface: 24 | 25 | ![img](imgs/789.png) 26 | 27 | ![img](imgs/12344.png) 28 | 29 | ![img](imgs/888.png) 30 | 31 | ![img](imgs/6677.png) 32 | 33 | **代码下载方法:** 34 | 35 | 关注【**CppGuide**】公众号,回复关键字“filezilla”即可得到源码。 36 | 37 | 38 | **编译方法:** 39 | 40 | 1. 编译filezilla客户端用VS2013打开filezillaclient\clien\src\FileZilla.sln编译即可。 41 | 2. 编译filezillaserver用VS2015打开filezillaserver\filezillaserver\filezillaserver.sln编译即可。 42 | 3. 编译filezillaserverinterface用VS2015打开filezillaserverinterface\filezillaserver\filezillaserverinterface.sln编译即可。 43 | 44 | 45 | 46 | 注意: 客户端使用C++11开发,而之所以服务器端的 filezillaserver 和 filezillaserver 选择使用较新的 VS2015,是因为服务器端的代码使用了C++14的一些特性,而VS2013是不支持C++14的所有的特性的。 47 | 48 | 客户端代码,使用了很多第三方库,比如界面库wxWidgets、zlib、sqlite等。 49 | 50 | 而项目中的CAsyncSocketEx模仿了mfc的CAsyncSocket,但是效率比mfc的CAsyncSocket要高。这个类可以直接拿到其它项目中使用的,比如电驴的源码就是直接使用了这个类。整个项目很有特色的地方是在支线程中使用windows的消息队列来代替传统的自定义消息队列。同时也是对ftp协议的实现。整个项目的代码质量也比较高。 51 | 52 | **代码下载方法**: 53 | 54 | 扫描下面的微信公众号二维码关注后回复关键字“**获取filezilla源码**”即可得到下载链接。 55 | 56 | ![img](imgs/wechat.jpg) 57 | -------------------------------------------------------------------------------- /MOBA游戏最后一战.md: -------------------------------------------------------------------------------- 1 | # MOBA游戏——最后一战 2 | 3 | 我们先来看下这个游戏的内容吧,下面给出游戏画面的部分截图: 4 | 5 | ![img](imgs/20180512131409884.png) 6 | 7 | 8 | 9 | ![img](imgs/20180512131422876.png) 10 | 11 | 12 | 13 | ![img](imgs/20180512131436481.png) 14 | 15 | 16 | 17 | ![img](imgs/20180512131458583.png) 18 | 19 | ![img](imgs/2018051213151714.png) 20 | 21 | ![img](imgs/20180512131534814.png) 22 | 23 | 24 | 25 | 这是一款类似于王者荣耀、dota之类的5v5实时RPG竞技游戏。 26 | 27 | ## 代码下载方法 28 | 29 | 关注“**高性能服务器开发**”公众号,回复关键字“**英雄联盟**”即可得到下载链接。 30 | 31 | ![](imgs/wechat.jpg) 32 | 33 | 先介绍一下推荐的源码的运行和开发环境(我的配置): 34 | 35 | Windows 7 36 | 37 | Visual Studio 2010 38 | 39 | 40 | 41 | 服务器端有非常多的模块,这里先截一张主要模块的项目图示: 42 | 43 | ![img](imgs/70.png) 44 | 45 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # opensource 2 | 整理了几款优质软件的源码。 3 | 4 | * [电驴源码](电驴源码.md) 5 | 6 | * [金山卫士](金山卫士源码.md) 7 | * [Filezilla](FTP软件filezilla客户端和服务器全套源码.md) 8 | * [MOBA游戏最后一战](MOBA游戏最后一战.md) 9 | 10 | 如果你在编译或者部署过程中遇到任何疑问,可以加我微信 cppxiaofang 求助。 -------------------------------------------------------------------------------- /imgs/123.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/123.png -------------------------------------------------------------------------------- /imgs/12344.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/12344.png -------------------------------------------------------------------------------- /imgs/20170707102116196.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/20170707102116196.png -------------------------------------------------------------------------------- /imgs/20170707102134921.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/20170707102134921.png -------------------------------------------------------------------------------- /imgs/20170707102159996.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/20170707102159996.png -------------------------------------------------------------------------------- /imgs/20170707102225208.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/20170707102225208.png -------------------------------------------------------------------------------- /imgs/20170707102237518.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/20170707102237518.png -------------------------------------------------------------------------------- /imgs/20170707103535158.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/20170707103535158.png -------------------------------------------------------------------------------- /imgs/20180512131409884.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/20180512131409884.png -------------------------------------------------------------------------------- /imgs/20180512131422876.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/20180512131422876.png -------------------------------------------------------------------------------- /imgs/20180512131436481.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/20180512131436481.png -------------------------------------------------------------------------------- /imgs/20180512131458583.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/20180512131458583.png -------------------------------------------------------------------------------- /imgs/2018051213151714.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/2018051213151714.png -------------------------------------------------------------------------------- /imgs/20180512131534814.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/20180512131534814.png -------------------------------------------------------------------------------- /imgs/456.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/456.png -------------------------------------------------------------------------------- /imgs/50fe0ef8dcd3a8b859b20af733603854.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/50fe0ef8dcd3a8b859b20af733603854.png -------------------------------------------------------------------------------- /imgs/6677.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/6677.png -------------------------------------------------------------------------------- /imgs/70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/70.png -------------------------------------------------------------------------------- /imgs/789.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/789.png -------------------------------------------------------------------------------- /imgs/888.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/888.png -------------------------------------------------------------------------------- /imgs/97e7e0b088e225846736604a5c6df025.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/97e7e0b088e225846736604a5c6df025.png -------------------------------------------------------------------------------- /imgs/Center.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/Center.png -------------------------------------------------------------------------------- /imgs/a90dc472c2fcf392856ad17a7782e79f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/a90dc472c2fcf392856ad17a7782e79f.png -------------------------------------------------------------------------------- /imgs/fd0b5bebe4a651495526bbe0c153937e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/fd0b5bebe4a651495526bbe0c153937e.png -------------------------------------------------------------------------------- /imgs/wechat.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/balloonwj/opensource/eac7839093700e87c881d9f3caaeb49dd5a17e79/imgs/wechat.jpg -------------------------------------------------------------------------------- /电驴源码.md: -------------------------------------------------------------------------------- 1 | # 电驴源码 2 | 3 | 这里分享一款资源分享与下载工具——emule,其实严格来说,应该叫电骡,这是我维护的版本,eMuleVeryCD版本,VeryCD是一个不错的资源分享网站:http://www.verycd.com/ 。大概在08年之前,中国市场流行的下载工具大概有三款:网际快车(flashget)、电驴(eMule)和迅雷,后来前两者都没落了。电驴的源码也开源了,迅雷抓住这个机会分析了电驴的下载协议(Kademlia),所以现在的迅雷也能解析emule的下载协议,凡是能用emule下载的链接,也能用迅雷下载。这是一些前尘往事吧。其实我蛮怀念那个时候的。 4 | 5 | 先看下软件功能截图吧。 6 | 7 | ![img](imgs/20170707102134921.png) 8 | 9 | ![img](imgs/20170707102116196.png) 10 | 11 | ![img](imgs/20170707102159996.png) 12 | 13 | ![img](imgs/20170707102225208.png) 14 | 15 | ![img](imgs/20170707102237518.png) 16 | 17 | 18 | 19 | ## **编译方法:** 20 | 21 | 1.将rcdll.dll复制到Visual Studio 2013安装目录的VC\bin目录中。(这是为了使用能在vista下显示的图标) 22 | 23 | 2. 用VS2013打开easyMule_Libs.sln,执行“生成解决方案”。(easyMule_Libs.sln里所包含的是easyMule所依赖的库文件。) 24 | 25 | 3.用VS2013打开easyMule.sln编译即可。 26 | 27 | 电驴服务器列表(eMule server list):http://gruk.org/list.php ed2k://|server|27.152.28.252|4242|/ 28 | 29 | 这个是我维护的easyMule版本,由于不断的修改,可能会离原来的版本越来越远。 30 | 31 | 32 | 33 | emule的整个工程是mfc项目,里面使用的socket通信库是filezilla作者Tim Kosse在其开源项目filezilla中使用的CAsyncSocketEx,这是一个模仿mfc的CAsyncSocket类,但据说效率高于CAsyncSocket的类。 34 | 35 | ## 代码特点 36 | 37 | emule的代码虽然设计上不是最好的,但从代码风格和命名来说绝对是非常优良的,尤其是其变量、类名、函数等命名风格,真的是赏心悦目。而且其工程中的大多数类都可以直接拿来使用,比如http类CHttpClient、ftp类CFtpClient、线程池类CMemPool等。另外其使用的大量常用的库,如图形库CxImage、轻量级存储库sqlite3、解析xml库tinyXML、加密压缩库cryptlib和zlib等,也为我们学习和使用这些库提供了一个捷径,有图为证: 38 | 39 | ![img](imgs/20170707103535158.png) 40 | 41 | 42 | 43 | 我曾经写过一篇emule源码分析的入门文章,面向的初学者的,如果你有兴趣可以看看:http://www.docin.com/p-668034568.html。 44 | 45 | **代码下载方法** 46 | 47 | 关注【**CppGuide**】公众号,回复关键字“**获取电驴源码**”即可得到源码。 48 | 49 | ![img](imgs/wechat.jpg) 50 | 51 | 52 | 如果你在使用或者阅读这份电驴源码的过程中遇到什么问题,欢迎留言。也可以加入我们的QQ技术交流群:729995516。 53 | 54 | Enjoy it! -------------------------------------------------------------------------------- /金山卫士源码.md: -------------------------------------------------------------------------------- 1 | # 金山卫士源码 2 | 3 | 自从金山卫士的代码部分开源以来,基于它出现了各种软件,有侧重界面库的,如SOUI,有侧重电脑安全管理的,下面是我维护的版本的部分截图: 4 | 5 | 主界面 6 | 7 | ![img](imgs/50fe0ef8dcd3a8b859b20af733603854.png) 8 | 9 | 垃圾清理 10 | 11 | ![img](imgs/fd0b5bebe4a651495526bbe0c153937e.png) 12 | 13 | ARP防火墙 14 | 15 | ![img](imgs/97e7e0b088e225846736604a5c6df025.png) 16 | 17 | 隐私保护器 18 | 19 | ![img](imgs/a90dc472c2fcf392856ad17a7782e79f.png) 20 | 21 | 对于广大开发者尤其是广大做Windows安全方面的朋友来说,这套代码具有很大的借鉴意义,至少我们可以知道那些所谓的“电脑管家”到底对我们的电脑做了什么事情。 22 | 23 | 24 | 25 | **代码下载地址:** 26 | 27 | 关注微信公众号『**CppGuide**』,然后回复关键字『**获取金山卫士源码**』,即可得到下载地址。 28 | 29 | ![img](imgs/wechat.jpg) 30 | 31 | 32 | 33 | 34 | 35 | 源码改编于金山卫士官网,请勿作为任何商业用途。 --------------------------------------------------------------------------------