https://blog.csdn.net/a406226715/article/details/44199559
https://www.cnblogs.com/aiwuzhi/p/7334294.html
https://blog.csdn.net/analogous_love/article/details/73863054
filezilla 的官方网址是:英文 https://filezilla-project.org/ 中文 https://www.filezilla.cn/
或者访问:https://github.com/baloonwj/filezilla
编译方法:
-
编译filezilla客户端用VS2013打开filezillaclient\clien\src\FileZilla.sln编译即可。
-
编译filezillaserver用VS2015打开filezillaserver\filezillaserver\filezillaserver.sln编译即可。
-
编译filezillaserverinterface用VS2015打开filezillaserverinterface\filezillaserver\filezillaserverinterface.sln编译即可。
注意: 客户端使用C++11开发,而之所以服务器端的filezillaserver和filezillaserver选择使用较新的VS2015,是因为服务器端的代码使用了c++14的一些特性,而VS2013是不支持C++14的所有的特性的。
客户端代码,使用了很多第三方库,比如界面库wxWidgets、zlib、sqlite等。
而项目中的CAsyncSocketEx模仿了mfc的CAsyncSocket,但是效率比mfc的CAsyncSocket要高。这个类可以直接拿到其它项目中使用的,比如电驴的源码就是直接使用了这个类。整个项目很有特色的地方是在支线程中使用windows的消息队列来代替传统的自定义消息队列。同时也是对ftp协议的实现。整个项目的代码质量也比较高。
如果您有什么问题,可以给我留言:906106643,或者加入我们的讨论群:49114021。
--------------
filezilla 所依赖的工程:
1.wxWidgets
版本:3.0.2
下载地址:点击打开链接
说明和编译:
1.最好自己拿vs编译一下。
2.在wxMSW-3.0.2/build/msw下面有vs的工程文件
3. 编译的时候出现Cannotopen include file: 'wx/setup.h': No such file or directory
将E:/workspace/wxMSW-2.8.12/include/wx/msw/setup.h
拷贝至上一级目录
E:/workspace/wxMSW-2.8.12/include/wx/setup.h
2.GnuTLS
版本:3.3.13
下载地址:点击打开链接
说明和编译:
1.这个不用自己编译,可以直接下载win的版本
2.如果在编译客户端的时候出面找不到gnutls_free这个函数的话,打开libgnutls-28.def这个文件将 gnutls_free @XXX 后面的DATA去掉
3.下载win版本的时候,是没有lib文件的,但是有def文件,可以使用vs的命令行进行转换,转换命令:
lib /libgnutls-28.def
3.sqlite
版本:amalgamation-3080803
下载:点击打开链接
说明和编译:
1.和上面一们下载win的版本是没有lib文件,但是有def文件使用命令转一下就可以
filezilla server所依赖的工程
1.zlib
版本:128
下载地址:点击打开链接
说明和编译
1.这个可以自己编译
2.openss
版本:1.0.1e
vs2013编译的其它问题
1.怎样解决VS2013模块对于SAFESEH 映像是不安全的
链接器”--“命令行”将 /SAFESEH:NO 复制到“其它选项(D)”框中,然后点击应用
提供一下可只接编译的工程
地址:点击打开链接
注意:
1.客户端运行的时候需要资源文件的,将filezilla的安装包中的locales,resources,doc目录复制过来
转载请注明出处:http://blog.csdn.net/a406226715
---------------------
作者:DaybreakZhang
来源:CSDN
原文:https://blog.csdn.net/a406226715/article/details/44199559?utm_source=copy
版权声明:本文为博主原创文章,转载请附上博文链接!