|
|
|
|
||
新建个工程,在窗体上画上两个编辑框控件,编辑框1、编辑框2,画上两个按钮控件,按钮1、按钮2,然后写入以下代码:
.版本 2
.支持库 eAPI
.程序集 窗口程序集1
.子程序 取目标进程ID, 整数型, , 取目标进程ID,参数为目标进程名称
.参数 进程名称, 文本型, , 如“CALL01.exe”
.局部变量 进程信息数组, 进程信息, , "0"
.局部变量 i, 整数型
进程信息数组 = 取系统进程列表 ()
.如果真 (取数组成员数 (进程信息数组) ≤ 0)
返回 (0)
.如果真结束
.计次循环首 (取数组成员数 (进程信息数组), i)
.如果真 (到大写 (进程信息数组 [i].进程名称) = 到大写 (进程名称))
返回 (进程信息数组 [i].进程标识符)
.如果真结束
.计次循环尾 ()
返回 (0)
.子程序 _按钮1_被单击
.如果 (编辑框1.内容 ≠ “” 且 编辑框2.内容 ≠ “”)
计算和 (到整数 (编辑框1.内容), 到整数 (编辑框2.内容))
.否则
.如果结束
.子程序 计算和
.参数 加数, 整数型
.参数 被加数, 整数型
.局部变量 代码, 字节集
push 0023
push 0012
push 00A77170
CALL 00459924
清空代码 ()
Push (加数)
Push (被加数)
Push (10973552) 十进制数值
Mov_EAX (4561188) 十进制数值
Call_EAX ()
ret ()
代码 = 取代码_ ()
调用函数 (取目标进程ID (“CALL01.exe”), 代码)
.子程序 _按钮2_被单击
.如果 (编辑框1.内容 ≠ “” 且 编辑框2.内容 ≠ “”)
计算积 (到整数 (编辑框1.内容), 到整数 (编辑框2.内容))
.否则
.如果结束
.子程序 计算积
.参数 乘数, 整数型
.参数 被乘数, 整数型
.局部变量 代码, 字节集
MOV EAX,DWORD PTR DS:[EBX+378]
CALL call01.00439CEC
MOV EAX,DWORD PTR SS:[EBP-4]
CALL call01.00408858
PUSH EAX
LEA EDX,DWORD PTR SS:[EBP-8]
MOV EAX,DWORD PTR DS:[EBX+374]
CALL call01.00439CEC
MOV EAX,DWORD PTR SS:[EBP-8]
CALL call01.00408858
PUSH EAX
PUSH EBX
CALL call01.00459A78
清空代码 ()
Push (乘数)
Push (被乘数)
Push (10973552) 十进制数值
Mov_EAX (4561528) 十进制数值
Call_EAX ()
ret ()
代码 = 取代码_ ()
调用函数 (取目标进程ID (“CALL01.exe”), 代码)
运行程序如图: