本文实例讲述了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++程序设计有所帮助。