Posted on 2011-09-13 20:51
eamon 阅读(503)
评论(0) 编辑 收藏 引用 所属分类:
Filezilla Server
简单对Filezilla Server 0.9.39源代码进行分析,参考了《
FileZilla Server源码分析 》 和《
FileZilla FTP服务器源代码分析》的内容。
首先下载相关的文件:
1、FileZilla_Server-0_9_39.exe
2、zlib-1.2.5.tar.bz2
3、tinyxml_2_6_2.zip
安装FileZilla_Server-0_9_39.exe时,选择Source Code,如下图:
将相应的文件解压缩,放置在E:\FileZilla目录下:
使用VS2005编译Boost库:(注:0.9.39已经移除了对Boost库的依赖,可以不用编译了)
cd E:\FileZilla\boost_1_47_0\tools\build\v2
bootstrap.bat
copy bjam.exe E:\FileZilla\boost_1_47_0\
cd E:\FileZilla\boost_1_47_0\
bjam --prefix=E:\FileZilla\boost --build-type=minimal toolset=msvc install
会在E:\FileZilla\boost 目录下生成Boost库文件。
使用VS2005编译Zib库:
用vs2005 打开E:\FileZilla\zlib-1.2.5\old\visualc6目录下的zlib.dsp
分别生成,选择LIB Debug 和 LIB Release,会在E:\FileZilla\zlib-1.2.5\old\visualc6目录下生成相应的文件
使用VS2005编译Filezil Server:
为了能在VS2005上编译FileZilla Server 源代码,将FileZilla server.vcproj 和FileZilla Server Interface.vcproj的第4行改为:
Version="8.00"
将FileZilla server.sln的第一行和第二行改为:
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
现在可以用VS2005打开 FileZilla server.sln 项目文件了,打开时会提示找不到GFTP项目,可以忽略。
将Service设为启动项目;
项目属性-配置属性-C/C++-常规-附加包含目录:"E:\FileZilla\zlib-1.2.5"
将E:\FileZilla\zlib-1.2.5\old\visualc6\Win32_LIB_Debug\zlibd.lib 拷贝到根目录(E:\FileZilla\source)下
项目属性-配置属性-链接器-输入-忽略特定的库:libcmtd.lib
项目属性-配置属性-链接器-输入-附加依赖项:atlsd.lib
现在应该可以编译运行了。
修改好的源代码:source.rar
由于Windows服务程序调试比较困难,将原程序修改为执行程序,方便调试,
仅供研究学习,勿用于其他用途:修改后的服务器端源代码