易语言中使用API函数WriteProcessMemory写出总是崩溃什么原因代码如下只会用模块的人别来得得

读出什么的都没问题,就是不能写
.版本 2
.支持库 eAPI
.支持库 spec
.程序集 窗口程序集1
.子程序 __启动窗口_创建完毕
进程数组 = 取系统进程列表 ()
.计次循环首 (取数组成员数 (进程数组), n)
.如果真 (进程数组 [n].进程名称 = “PlantsVsZombies.exe”)
PID = 进程数组 [n].进程标识符
进程句柄 = OpenProcess (2035711, 假, PID)
调试输出 (进程句柄)
ReadProcessMemory (进程句柄, 6987456, 缓冲区, 4, 0)
调试输出 (缓冲区)
ReadProcessMemory (进程句柄, 缓冲区 + 1896, 缓冲区, 4, 0)
调试输出 (缓冲区)
ReadProcessMemory (进程句柄, 缓冲区 + 21856, 缓冲区, 4, 0)
调试输出 (缓冲区)
信息框 (“已启动,现在阳光值为:” + 到文本 (缓冲区), 0, )
返回 ()
.如果真结束
.计次循环尾 ()
信息框 (“请确认是否已启动游戏”, 0, )
销毁 ()
.子程序 _确定_被单击
WriteProcessMemory (进程句柄, 6987456, 到数值 (编辑框1.内容), 4, 0)
WriteProcessMemory (进程句柄, 6987456 + 1896, 到数值 (编辑框1.内容), 4, 0)
WriteProcessMemory (进程句柄, 6987456 + 1890 + 21856, 到数值 (编辑框1.内容), 4, 0)

建议F9下断点调试,看看程序是在哪一步崩溃的


你没有明白我的意思,不是直接在程序中写"[ ]",中括号是汇编中的写法,“【6987456】”表“6987456
”这个地址中存放的值

不明白再问吧

温馨提示:答案为网友推荐,仅供参考