本文实例讲述了VC++植物大战僵尸中文版修改器实现代码。分享给大家供大家参考。具体分析如下:
这是很简单的一个辅助工具,关键是游戏数据的分析,实现了两个功能,无限阳光和无冷却。特别注意的一下,如果用VS2008编译的话,调试的时候是正常的,但编译后功能就会失效,这是因为OpenProcess权限的问题,需要提权,在VC6下是正常的。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
void CzhiwuDlg::OnBnClickedButton1()
{
//无限阳光代码
HWND hJubing;
DWORD lID;
DWORD base = 0x006a9ec0;
DWORD cunfang;
hJubing= FindWindowA(NULL, "植物大战僵尸中文版" );
GetWindowThreadProcessId(hJubing,&lID);
HANDLE hOpen = OpenProcess(PROCESS_ALL_ACCESS,0,lID);
ReadProcessMemory(hOpen,( LPVOID )base,&cunfang,4,NULL);
base = cunfang + 0x768;
ReadProcessMemory(hOpen,( LPVOID )base,&cunfang,4,NULL);
base = cunfang + 0x5560;
cunfang=9999;
WriteProcessMemory(hOpen,( LPVOID )base,&cunfang,4,NULL);
}
void CzhiwuDlg::OnBnClickedButton2()
{
//无冷却时间代码
DWORD lID;
DWORD base = 0x00488e73;
HWND hJuBing = FindWindowA(NULL, "植物大战僵尸中文版" );
GetWindowThreadProcessId(hJuBing,&lID); //获取进程id
HANDLE hOpen = OpenProcess(PROCESS_ALL_ACCESS,NULL,lID);
//打开进程 获取所有操作权限
DWORD pianyi = 0x80;
WriteProcessMemory(hOpen,( LPVOID )base,&pianyi,1,NULL);
}
|
希望本文所述对大家的VC++程序设计有所帮助。