查看: 99|回复: 0

[教程] 易语言写内存字节集方法

[复制链接]

3

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2011-4-16
发表于 2018-12-24 16:31:23 | 显示全部楼层 |阅读模式

 本篇文章主要介绍如何使用编程软件“易语言”做到修改指定进程的指定内存地址中的字节数组数据。

  字节集可以看做是较长的字节数组。

1、启动“易语言”。

2、选择“菜单栏”中的“f.程序”,再在弹出的列表中选择“N.新建”。

3、在弹出的标题为“新建:”的窗口中选择“Windows窗口程序”,再点击标题为“确定(o)”的按钮。

4、在背景为灰色的,且标题为“”(空的文本)的窗口上鼠标左键双击。

5、在新出现的页面粘贴“API”:

.版本 2


.DLL命令 _打开当前进程, 整数型, "kernel32.dll", "GetCurrentProcess"


.DLL命令 _关闭对象, 整数型, "kernel32.dll", "CloseHandle"

  .参数 对象句柄, 整数型


.DLL命令 _内存写字节集, 整数型, "kernel32.dll", "WriteProcessMemory"

  .参数 hProcess, 整数型

  .参数 pBaseAddress, 整数型

  .参数 lpBuffer, 字节集, 传址

  .参数 nSize, 整数型

  .参数 lpNumberOfBytesWritten, 整数型


.DLL命令 _打开进程, 整数型, "kernel32.dll", "OpenProcess"

  .参数 访问级别, 整数型

  .参数 子进程继承, 整数型

  .参数 进程ID, 整数型

 

6、粘贴玩“API”,粘贴子程序的代码:

.版本 2


.子程序 写内存字节集, 逻辑型

.参数 进程ID, 整数型

.参数 地址, 整数型

.参数 数据, 字节集

.参数 写入长度, 整数型, 可空

.局部变量 操作句柄, 整数型

.局部变量 a, 整数型


.如果 (进程ID = -1)

  操作句柄 = _打开当前进程 ()

.否则

  操作句柄 = _打开进程 (2, 0, 进程ID)

.如果结束

a = _内存写字节集 (操作句柄, 地址, 数据, 选择 (写入长度 = 0, 取字节集长度 (数据), 写入长度), 0)

_关闭对象 (操作句柄)

.如果 (a = 0)

  返回 (假)

.否则

  返回 (真)

 

7、最后在“__启动窗口_创建完毕”的字样下写代码:

写内存字节集 (, , )‘第一个为进程PID,第二个是内存地址,第三个是字节数组数据

 

总结:以上就是关于易语言如何写内存字节集的教学内容,感谢大家的阅读。

您可能感兴趣的文章:
  • 详解易语言写内存整数型
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部