Asnow的专栏

精益求精,宁静致远。

popo2004程序结构分析

网易泡泡2004(NETEASE POPO)分析报告

2005-4-15

By wateroom

目标版本:POPO2004BUILD0907

 

 

一.物理结构与文件功能分析

Popo2004 的顶层目录: 28 个文件 10 个目录,基本功能说明如下:

l         目录:

[.]                [..]

[ad]:存储广告信息,主要是些图片。

[BIMAGE]大型图片?       

[faces]:软件里个人配置时使用的头像文件。                     

[LU_TEMP]:存放自动升级组件从网上下载到的升级文件的ZIP包。

[plugins]:插件目录,用于功能扩展,例如MSN插件等。

[skin]:存放皮肤文件                    

[SysBmp]:软件图像资源,图标等。                  

[SYSDATA] :全局配置,关于表情,动作等。

[Users]:用户目录,存放用户的聊天纪录,个人配置信息等。

[wave]:存放系统使用到的声音文件。               

l         配置文件:

gdstrings.ini :全局字符串定义。

    localver.ini:存放本地文件的版本号,用于升级时同服务器文件版本对比。

 

l         可执行文件:

LSPhoneEngine.exeIP电话软件的核心

     Popo.exe:主程序,调用各个组件实现各种功能。

       Start.exe:启动程序,主要用作升级时解压缩[LU_TEMP]目录里的文件升级本地文件,然后创建进程启动popo.exe

      uninstall.exe:反安装程序。

l         动态链接库:

Ø         网易开发:

Bobo.dll:具体功能有待分析,比较核心的模块,调用其它几个组件,核心逻辑在此?

idlemon.dll:空闲处理。

MailChecker.dll:独立组件,检测邮箱是否有新邮件。

MsgHis.dll:独立组件,管理聊天纪录,消息历史。

ResLoc.dll:资源定位,需要和交互服务器的通讯都需要此文件?

SOX.dll:非常关键的组件,有待分析。

share.dll:文件共享组件。                                   

Updater.dll:自动升级组件。         

VCodec.dll:独立组件,用于Xvid进行MPEG4视频编码?

Trace.dll:用于追踪调试,被BOBO.DLL调用。                

XComm.dll:用于网络通讯。所有的通讯功能,无论是否服务器参与,还是P2P的都需要此组件的某些功能。         

XEmotion.dll:调用P2PMGR.dll。用于聊天时的表情传输与解释?

XFile.dll:用于聊天时传输文件。         

XGDI.dll:独立组件,用户界面。           

XVideo.dll:用于视频聊天,主要负责视频的捕获与编码。

XVoice.dll:音频流的捕获与发送,用于语音聊天。                           

Ø         微软系统库:

dbghelp.dll:用于调试帮助。

msvcp60.dll:微软VC++运行时库。

msvcrt.dll:微软C运行时库。 

Ø         第三方库:

LSPhoneCtrlDll.dllIP电话控件。

Unzip32.dll:解压缩组件。     

                   

    POPO使用了组件化技术,主程序同各个功能组件独立,便于升级与模块化开发。大部分DLLCOM组件。从大多数网易开发的组件调用MFC42.dll来看,软件使用VISUAL C++6.0开发。

  最核心的部分是Xcomm.dll,它包装了WINSOCK的一些函数,POPO进行所进行的网络通讯除了自动升级与邮件检测,其它数据全经过此组件的转发。初步推断使用UDP协议;P2pmgr.dll也被多次调用,可能是用于在2个客户端之间进行P2P通讯时的相关操作管理,维护文件传输,视频与语音传送等。Resloc.dll在自动升级等多个组件里被调用,可能包含确定服务器资源的代码,比如进行服务器端的负载均衡时的客户端选择代码。Bobo.dll里面应该包含主要的信息编解码与加密解密函数。

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭