我最近在帮别人做一个模拟霓虹灯的软件,是模仿另外一家公司的!但是做到后面就卡住了,实现不了!程序运行速度也很慢(被模仿的那个软件运行速度很快!)
请各位老师帮忙!
我做的程序:http://www.beibei8.com/downloads/test.rar
被模仿的软件:http://www.beibei8.com/downloads/ok.rar

解决方案 »

  1.   

    告诉你个方法,反汇编,用smartcheck 或ollydbg
      

  2.   

    抱歉,这几天一直在郊区开会,没法上网,原本上礼拜就该给你个答复。
    让楼主失望了,没有帮你搞定,但我仔细看了你的程序,恐怕我的意见是~~~你的思路并不是样板程序的思路,如果非要说是的话,我想也仅是在具体的绘图上是吧。而且,就算是具体的绘图部分,我也不感肯定你的思路是对的。你是用填充函数去绘图,我想无论如何,填充函数的效率应该是所有的绘图方式中最低的吧,因为他需要不断的去判断是否达到了界限。你给的例子中有一个30多M的文件,我不知道你是否注意过这个文件,我测试的结果,这个文件至少不是装装样子,首先没有这个文件不行,而且我试了一下随便改变其中的一些值,但是例子也无法正常执行了。但是我改变的值比较过分,我是用替换把所有的FF变为80,因为我原先想,在这里是不是以一帧一帧的形式记录了画面、至少也是没一帧上某一部分的颜色,所以把FF边为80,颜色应该改变,但结果不对。我仔细看了例子下的几个文件,主要是那个30多M的和要加载的那个文件,运行时需要加载的文件中记录的怀疑是记录了每一个可以被改变颜色的位置,但如果紧紧是位置的话,应该没有那么大,所以怀疑是不是其中以小矩阵的形式记录着所有可以改变颜色的坐标。而大文件中的值是成段的重复,但每一次重复,其值几乎都一样,比如一大段00的后面跟着FF CC什么的重复,这里的FF CC这样的区域的具体的值的变化很小,我没有一页一页的去翻着看,但给我的印象是这样的,所以,我很怀疑这个30多M的文件,是以一帧一帧的形式保存了每一帧的Mask,这样的话,他只需在后台对每一帧的mask去着色,然后在混合到屏幕即可,同时,小文件中记录的,也就可能是针对每一帧的mask的某一个可以着色的区域的颜色值。以上是我的一些想法,你参考一下吧,很抱歉没有帮上你。
      

  3.   

    我前不久帮别人做一个模拟霓虹灯的软件,用vb.net,开发时间较短,效果一般,有兴趣探讨一下。[email protected]
      

  4.   

    因为不能下载,只要给你个提示
    不要用time控件,用
    while 1
    doevents
    wend
    死循环,速度比time快3000倍!
    可是加了doevents不死了,比time控件快100倍!呜~~~~~~~