内存读写
第一个用C写的一个游戏辅助,一个简单的内存读写操作,搞了两个多小时,不愧是易语言,用易语言几句代码就解决了,百度,看例程,总算搞完了
#include<stdio.h>
#include<windows.h>
int main(){
HWND jubing; //窗口句柄
DWORD pid; // 进程
HANDLE hProcess;
DWORD Buffer = 0;
DWORD sun = 0;
jubing=FindWindowA(NULL,"植物大战僵尸中文版");
if (jubing==0){
printf("请先打开游戏\n");
system("pause");
}
else{
printf("游戏已经运行,窗口句柄为:%d\n",jubing);
GetWindowThreadProcessId(jubing,&pid);
hProcess=OpenProcess(PROCESS_ALL_ACCESS,0,pid);
ReadProcessMemory(hProcess, (LPVOID)(0x6a9ec0), &Buffer, 4, NULL); //读取地址
ReadProcessMemory(hProcess, (LPVOID)(Buffer + (0x768)), &Buffer, 4, NULL); //one pianyi
ReadProcessMemory(hProcess, (LPVOID)(Buffer + (0x5560)), &Buffer, 4, NULL);//two pianyi 直接读取
printf("当前阳光:%d\n",Buffer);
while(1){
printf("输入你要修改的阳光:");
scanf("%d",&sun);
ReadProcessMemory(hProcess, (LPVOID)(0x6a9ec0), &Buffer, 4, NULL); //读取地址
ReadProcessMemory(hProcess, (LPVOID)(Buffer + (0x768)), &Buffer, 4, NULL); //one pianyi
WriteProcessMemory(hProcess, (LPVOID)(Buffer + (0x5560)), &sun, 4, NULL);//写
printf("修改成功\n");
}
}
system("pause");
return 0;
}
总结:应该仔细学习指针,指针,指针,还有基本的C语言语法。
代码不理解的部分就是回去句柄,窗口什么的,而且变量“jubing”命名有误,请参照https://baike.sogou.com/m/v8011835.htm?null 进行修改。