驱动内存读写代码无模块

易语言 2020-07-24 11:09:08

驱动内存读写代码无模块

.子程序 写代码, 逻辑型, 公开
.参数 进程ID, 整数型, , 进程ID
.参数 文本表达式, 文本型, , 文本表达式,如基址+偏移
.参数 还原表达式, 文本型, 参考 可空, 如果不接收地址中原有数据,留空
.局部变量 地址数组, 文本型, , "0"
.局部变量 计次, 整数型
.局部变量 地址, 整数型
.局部变量 欲赋值, 整数型
.局部变量 临时, 文本型, , "0"

地址数组 = 分割文本 (文本表达式, “+”, )
.如果真 (取数组成员数 (地址数组) ≠ 0)
临时 = 分割文本 (地址数组 [取数组成员数 (地址数组)], “=”, )
.如果真 (取数组成员数 (临时) ≠ 2)
返回 (假)
.如果真结束
地址数组 [取数组成员数 (地址数组)] = 临时 [1]
欲赋值 = 到整数 (临时 [2])
地址 = 读整数型 (进程ID, 十六到十 (地址数组 [1]))
.计次循环首 (取数组成员数 (地址数组) - 2, 计次)
地址 = 读整数型 (进程ID, 地址 + 十六到十 (地址数组 [计次 + 1]))
.计次循环尾 ()
.计次循环首 (取数组成员数 (地址数组), 计次)
还原表达式 = 还原表达式 + 地址数组 [计次]
.计次循环尾 ()
还原表达式 = 还原表达式 + 到文本 (读整数型 (进程ID, 地址))
.如果真 (写整数型 (进程ID, 地址, 欲赋值) = 真)
返回 (真)