首页
社区
课程
招聘
[原创]PB程序小试
发表于: 2009-6-15 22:39 7366

[原创]PB程序小试

2009-6-15 22:39
7366
【文章标题】: PB程序小试
【文章作者】: omni
【作者邮箱】: d
【软件名称】: 商业软件
【软件大小】: 21.7M
【下载地址】: 自己搜索
【加壳方式】: 无
【编写语言】: pb
【使用工具】: PEID OD PBKiller WinHex
【操作平台】: xp
【软件介绍】: 国产商业财务软件
【作者声明】: 只做交流,希望有更多的人来学习pb的编译方法
--------------------------------------------------------------------------------
【详细过程】
  程序是免费发送,但是有使用单据数量限制,要先完成开发商的任务,才能用到200张凭证,过了200的限制,就必须花钱买
  了,而且一次只能注册一个帐套。所以破解思路很明显,去除使用单据限制即可。最后要说的是程序的限制提示出现在凭证
  结账模块里面,所以,我直接分析关键模块。
   
  文件主程序查壳achs.exe>>>Microsoft Visual C++ 5.0 [Overlay]
  
  1.OD载入 搜索不到任何可用的文本信息,发现总是在pbvm90.dll里面转,才发现是PB的库,于是只有用PBKiller来分析代
  码(是挺方便,就是不能修改文件,呵呵,美中不足)
  
  2.直接分析关键文件acc.pbd,找到其中W3_1PZJZ窗口 ,展开找到按钮事件controls---cb_1---events---clicked()
  代码如下:
  if pub_pj = "1" and pub_demo = "1" then
  
          if v_row > 100 then
                  messagebox("提示","每月凭证不能超过100张!")
                  return
          end if
  
  end if
  
  if pub_pj = "2" and pub_demo = "1" then
  
          if v_row > 200 then
                  messagebox("提示","每月凭证不能超过200张!")
                  return
          end if
  
  end if
  
  if pub_pj = "3" and pub_demo = "1" then
  
          if v_row > 300 then
                  messagebox("提示","每月凭证不能超过300张!")
                  return
          end if
  
  end if
  
  ---------------------------------------------------------------
  代码非常清晰,不用多说,下面要做的是修改代码。
  1.目前只有WinHex等16进制编辑工具来修改,关键是如何找你要的16进制数.
  
  2.用WinHex编辑后,找字符串“每月凭证不能超过200张”
  发现附近没有100,200,300我们要改的数字,但是我反复的看这些字符串前面有“1 每月凭证不能超过100张! ” “2 每月凭证不能超过200张!” “3  每月凭证不能超过300张!”的特征
   也刚好对应着 if pub_pj = "1" and pub_demo = "1" then//if pub_pj = "2" and            pub_demo = "1" then//if pub_pj = "3" and pub_demo = "1" then
  
  3.直接用WinHex修改对应的16进制数:02 00 31 00 C3 BF D4 C2-----02 00 34 00 C3 BF D4 C2(1改为4)
                                     00 00 06 00 02 00 32 00-----00 00 06 00 02 00 34 00(2改为4)
                                     06 00 02 00 33 00 C3 BF-----06 00 02 00 34 00 C3 BF(2改为4)
  4.保存退出,发现,结帐限制已经没有了。
  
  DONE
  
  
  
--------------------------------------------------------------------------------
【经验总结】
  目前.Pbd文件修改的方法,只有用16进制修改工具,找关键点的方法,希望大家都说说,自己在调试PB的时候,都用的什么
  方法,呵呵,我希望想大家多学学。
  
  本人表达能力不好,别笑话我!!!
  
--------------------------------------------------------------------------------
【版权声明】: 本文原创于看雪技术论坛, 转载请注明作者并保持文章的完整, 谢谢!

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 4247
活跃值: (3053)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
楼主,我也有个PB程序,能帮忙看下吗!
2017-3-31 10:16
0
游客
登录 | 注册 方可回帖
返回
//