关于飞狐507多接口问题表明我的看法 BY 深男大盗 071231
来自:MACD论坛(bbs.shudaoyoufang.com)
作者:RegKiller
浏览:5633
回复:32
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
其实很早前就想跟大家说一下了,不过一直没敢打击大家的热情,这里简单说一下吧:
506版之后的飞狐代码方面做了不少的改动,比较了一下,删除了很多功能代码,换句话说也就是507不是没可能做多接口,不过难度要比506之前的版本大很多,因为代码的缺矢需要从新来补,当然可以借鉴之前版本代码直接COPY到507中,不过由于都是汇编代码,做起来可就不象原代码那么容易了,在飞狐507中我早已提前考虑到日后补丁的问题,所以我发布的那几个文件都以增加了2000B的字节,大小也就是不到2K。这对补丁写代码已经足够了,对使用者说代价就是你所使用的文件比正常直接脱壳但文件并为空间优化过的文件大了2K的大小。为什么我没对文件做优化呢:
一 考虑带直接写汇编码补丁的方便性,因为存在文件对齐问题。第二,方便我日后发笔记给大家直接程序对照,所以这个我就不去做了,当然其实文件优化一下再加个压缩壳可以变的更小,不过日后你再想修改代码或资源就不会太开心了。
二 优化可能就是大家通常情况下理解的程序性能优化,应该就是大家希望的内存优化吧,这个我也没做,不是难做或是不能做,原因是那并不是真正的优化,反而还要不停的写内存内容到硬盘做临时缓存,考虑到我想自己的硬盘和你们的硬盘多活几年,所以我不会去考虑做这种优化,当然了,这个其实不是我最先说的,大家有兴趣的可以去网上搜一下"所谓的内存优化"之类的关键字,看看真正的程序员是怎么解释的。
看到这我想你应该已经有个初步了解了,不懂不要紧,先了解也算没白看我的废话。那么我想你一定想问那你为什么不去做呢,不就是难了那么一点吗。是的。真的是难了那么一点,难就难在我目前的时间是个最大的问题了,估计很快就会要有段时间手头不会有电脑可用了。原因大家都已经知道了。所以时间上我是无法完成的。真的不想让大家失望,这只是个时间问题而已。爱莫能助了。至少最近是这样了。呵呵。
前面说的COPY代码的方法在我之前发的涨III中就是那个思路了。我能对你说的就只有这么多了。
好了,言归正传,举例给大家说明下,至于代码上哪里做过改动,有兴趣的朋友自己用我提供的文件去对比下,我就不发布修改代码了,因为意义已经不大了。
这里我们还是看图来简单说明一下为什么我说507版开始已经不太容易实现多接口了,为什么比49或更早的版本实现多接口更难呢?答案只有一个:
飞狐507开始已经删除了多接口代码(初步确定)。有兴趣的朋友可以对比下507与之前版本的接口代码。(506版我没细看,不过那个应该是4.0的核心,所以我没多大兴趣碰)
我们先用资源编辑器(随便哪种都OK)来看看多接口的资源窗口。如图1:
这是程序还没调用该窗口时的样子,这就是个资源而已,所以看看就OK了。
接下来我们来看看4051102(也就是源码王提供的)那个版本的飞狐调用多接口窗口后的样子(当然了,极地的那个版本也一样道理)。如图2:
其实源码王修改的地方也不是很多,原因很简单,飞狐4中都有相应的代码,所以只修改下调用点就可以了。
再下来我们来看看飞狐507调用图1中资源后是个什么样子,如图3:
不过感觉已经意义不太大了,因为507版中就算你调用出这个窗口,但是没有对应的接口代码供你使用,除非你自己补上。至少目前还没有一个足够的动力让我在汇编码下去完成这个工作,工作量太大了。
最后提供一个我修改后可以显示出上图1中窗口的飞狐507,这个也是用我之前那个整合版修改的,所以大家有兴趣可以自己去对照代码上的区别。改动了2处,很小的改动。
同时再送一份薄礼,下载地址:http://bbs.macd.cn/thread-1318611-1-1.html
礼物截图:

[ 本帖最后由 RegKiller 于 2008-1-2 02:17 编辑 ] |