文号
t48774
阅读
5531
回复
9
收藏
6
【开源】植物大战僵尸修改器
2012/07/31
IP:福建
声明:此软部分代码非原创 。

先送上软件
attachment icon PlantsVsZombiesTool.rar 8.01KB RAR 37次下载
不能出售呢~好可惜。
注释:此软通过读取软件进程数据来达成修改软件内部指令的目的(PvZ是修改程序指令大神的好去处)
运行期间的截图 QQ浏览器截屏未命名.jpg
QQ浏览器截屏未命名(1).jpg
QQ浏览器截屏未命名(2).jpg   
开源:
Option Explicit

Private Declare Function ReadProcessMemory _
                Lib "Kernel32.dll" (ByVal hProcess As Long, _
                                    ByRef lpBaseAddress As Any, _
                                    ByRef lpBuffer As Any, _
                                    ByVal nSize As Long, _
                                    ByRef lpNumberOfBytesWritten As Long) As Long

Private Declare Function WriteProcessMemory _
                Lib "Kernel32.dll" (ByVal hProcess As Long, _
                                    ByRef lpBaseAddress As Any, _
                                    ByRef lpBuffer As Any, _
                                    ByVal nSize As Long, _
                                    ByRef lpNumberOfBytesWritten As Long) As Long

Private Declare Function OpenProcess _
                Lib "Kernel32.dll" (ByVal dwDesiredAccess As Long, _
                                    ByVal bInheritHandle As Long, _
                                    ByVal dwProcessId As Long) As Long

Private Declare Function CloseHandle Lib "Kernel32.dll" (ByVal hObject As Long) As Long


Private Const baseAddress As Long = &H6A9EC0
Private Const processName As String = "[s:9]lantsVsZombies.exe"

这段不解释,主要是定义和读取

这段是金钱无限的工具代码,是点击cmdButton1的结果

这段是阳光无限的工具代码,是点击cmdButton2的结果
接下来是关键部分代码:


Private Sub WriteMemoryValue(ByVal baseAddress As Long, ByVal value As Long)
    Dim hProcess As Long
    hProcess = OpenProcess(&H1F0FFF, 0, GetPid)
    WriteProcessMemory hProcess, ByVal baseAddress, value, 4, 0&
    CloseHandle hProcess

End Sub

Private Function ReadMemoryValue(ByVal Address As Long) As Long
    Dim hProcess As Long
    Dim buffer   As Long
    
    hProcess = OpenProcess(&H1F0FFF, 0, GetPid)
    ReadProcessMemory hProcess, ByVal Address, ByVal VarPtr(buffer), 4, 0&
    CloseHandle hProcess
    ReadMemoryValue = buffer
End Function



首先获取PID,从而介入进程


最后是Timer代码


任务完成~这个是SoSbLab暑假任务的作品,Cqb98来看看
+20
科创币
acmilan
2012/07/31
呃……VB6
14年5个月前IP:未同步
430551
1楼
好像真的是vb编的。。。。。。。。
引用
评论
asdw_15951作者
14年5个月前IP:未同步
430611
2楼
回 1楼(化学小僧) 的帖子
本来就是VB编的
引用
评论
14年5个月前IP:未同步
430715
3楼
代码好长,不过又是vb6的,不管怎样,有源码的总比没有的强,否则不小心又中毒了。
引用
评论
asdw_15951作者
14年5个月前IP:未同步
431304
4楼
回 3楼(pl_014) 的帖子
我最近一直在专攻VB啊
+20
科创币
20!Dopaminor
2012/10/21
你的是什么版本?
引用
评论
14年2个月前IP:未同步
460824
5楼
很不错,进程注入。
引用
评论
14年2个月前IP:未同步
462204
6楼
回 4楼(asdw_15951) 的帖子
为什么我不觉得有任何变化   钱用完就没了   阳光也没多
引用
评论
asdw_15951作者
14年2个月前IP:未同步
464541
7楼
回 6楼(20!不曾存在) 的帖子
明显是Vb6,最近在学习VC,同时也欢迎访问XXXXXXXXXXXXX龙腾科技工作室官方首页!
引用
评论
14年2个月前IP:未同步
466413
8楼
回 7楼(asdw_15951) 的帖子
为了LZ的头像,我得回一个……
这可是许嵩新专辑啊!妹子老喜欢了……
引用
评论
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的