Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说编译飞鸽传书源代码的方法,希望能够帮助你!!!。
作者:冷雨空间
转自:http://blog.163.com/loving_you2000/blog/static/21100188200922610200778/
飞鸽传书 (IP Messenger V2.06)是一款基于 TCP/IP(UDP)的局域网内即时通信软件,2.00以上版本支持局域网内发信息、传送文件、文件夹、多文件(或文件夹),通讯数据采用 RSA/Blofish 加密 (2.00版以上),速度非常快,采用BSD License开源许可协议发布。数据通讯不需要建立服务器、直接在两台电脑间通信和数据传输,支持文件及文件目录的传输,具有安全快捷以及小巧方便等优异特点,因此很多公司都采用它作为部门、公司内部的IM即时通信工具。IP Messenger在程序结构方面采用了Windows SDK处理结构,通信方面采用了TCP/UDP通信方式,在文件传输处理方面采用文件映射技术等。最新版(2.50 alpha6)的Log文件支持 UTF-8编码格式,增加了气球提示。
(1)从官方主页http://www.ipmsg.org/index.html.en下载IP Messenger的源代码压缩包ipmsg206src.zip,解压缩得到如下图所示的目录;
(2)IP Messenger的主要目录及其主要源文件的描述
属性 |
名称 |
描述 |
目录 |
SRC |
工程文件源代码和INSTALL目录 |
文件 |
IPMSG.MAK |
VC++ 4及以前版本使用的工程文件,用来指定如何建立一个工程,VC++ 6把MAK文件转换成DSP文件来处理 |
IPMSG.MDP |
后缀MDP(Microsoft DevStudio Project的简称)是老版本的项目文件,相当于DSP文件 |
|
PROT-ENG.TXT |
英文版的协议描述 |
|
PROTOCOL.TXT |
日文版的协议描述 |
|
README.TXT |
英文版的README |
|
README-J.TXT |
日文版的README |
(3)IP Messenger的SRC目录及主要文件
属性 |
名称 |
描述 |
目录 |
INSTALL |
安装程序源代码目录 |
BLOWFISH.CPP |
加密算法源文件 |
|
BLOWFISH.H |
加密算法头文件 |
|
BLOWFISH.H2 |
加密算法随机数头文件 |
|
CFG.CPP |
系统配置源文件 |
|
IPMSG.CPP |
IPMSG的APP源文件 |
|
IPMSG.H |
IPMSG头文件 |
|
LOGDLG.CPP |
日志DLG源文件 |
|
LOGMNG.CPP |
日志处理源文件 |
|
MAINWIN.CPP |
IP Messenger主窗口源文件 |
|
MISCDLG.CPP |
消息DLG,关于DLG,以及控件子类化等源文件 |
|
MSGMNG.CPP |
Socket管理源文件 |
|
PLUGIN.CPP |
Dll plugin加载源文件 |
|
RECVDLG.CPP |
接收消息处理源文件 |
|
SENDDLG.CPP |
发送消息处理源文件 |
|
SETUPDLG.CPP |
IP Messenger属性配置源文件 |
|
SHARE.CPP |
文件传输接收管理源文件 |
|
TAPP.CPP |
应用程序类源文件 |
|
TDLG.CPP |
DLG类源文件 |
|
TLIST.CPP |
链表类源文件 |
|
TREGIST.CPP |
注册表操作类源文件 |
|
TWIN.CPP |
窗口类源文件 |
|
MSGSTR.H |
字符串常量头文件 |
|
TLIB.H |
类、结构等头文件 |
另外,在SRC目录下,还有一个INSTALL目录,该目录中的文件是IP Messenger安装程序的源代码,其主要文件描述如下表所示:
属性 |
名称 |
描述 |
文件 |
INSTALL.CPP |
安装程序源文件 |
INSTALL.H |
安装程序头文件 |
(4)IP Messenger源代码的工程转换
由于IP Messenger是使用VC++ 4编写的,使用VC++ 6打开工程文件时,需要将该工程文件转换为VC++ 6版本的工程文件。打开VC++ 6开发工具,将源代码目录下的IPMSG.MDP文件拖到VC++ 6中;或者双击打开IPMSG.MDP文件,启动VC++ 6之后,会弹出如下图所示的提示转换IPMSG.MAK工程配置文件到VC++ 6下的工程文件的对话框。
单击 “是”按钮,确定将工程转换成VC++ 6的工程。此后,系统会弹出如下图所示的对话框,提示将MAK工程文件转换成DSP工程文件。
单击“确定”按钮,系统会自动根据MAK文件生成IPMSG.DSP文件,以及VC++ 6下的IPMSG.DSW文件,另外,系统还生成了IPMSG.NCB和IPMSG.OPT两个文件。这时的源代码工程目录如下所示:
(5)IP Messenger的工程配置
IP Messenger的配置和VC++ 6的工程配置有些不同,其安装工程文件和工程文件在混合在一起,不像VC++ 6工程文件,不同的工程在不同的项目下,分别进行配置。配置IP Messenger工程的方法如下:
单击“Build”菜单,选择“Set Active Configuration…”,弹出“Set Active Project Configuration”对话框,如下图所示。
IP Messenger的工程配置有6个,分别是Release的英文、日文以及Debug的ipmsg工程和安装工程。通过选择不同的配置,可以编译出不同的工程。根据需要,可以选择ipmsg-Win32 Debug配置作为当前活动工程,此编译配置可以编译出Debug版的ipmsg。单击“Project”菜单,选择“Settings…”,弹出“Project Settings”对话框,选择“C/C++”标签栏,如下图所示。
可以看到,在“Preprocessor definition:”中,工程使用了“JAPANESE”宏定义,也就是说,编译后的Debug版的ipmsg是日文版。当然,可以根据需要,修改此宏为“ENGLISH”,就可以编译出Debug版的英文ipmsg。编译ipmsg的安装工程时,应选择ipmsg-Win32 InstallerDbg配置作为当前活动工程,编译出Debug版的安装工程。
(6)完成上述操作之后,就可以使用VC++ 6来编译、调试IP Messenger。
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
上一篇
已是最后文章
下一篇
已是最新文章