来自当知百科
跳转到: 导航搜索

REMOTE CALL

  CALL通常指REMOTE CALL、游戏CALL,指一种注入外部EXE程序从外部调用函数的技术。

  找CALL一般使用OD等工具,而CALL的使用一般需要编写复杂的汇编代码,在快手(AAuto Quicker)中推出了一种通用CALL技术,可以象声明WIN API一样声明CALL.下面是一个简单的示例:

  //外部CALL读取命令行

  //列出所有已运行进程的命令行参数

  import winex;

  io.open()

  //遍历所有窗口

  for hwnd,title,theadId,processId in winex.each( ) {

  if(title != "") //如果标题不为空

  {

  //在外部EXE进程创建函数

  GetCommandLine =raw.remoteApi(processId,"string()","Kernel32.dll","GetCommandLineA")

  str = GetCommandLine()

  io.print(processId,title,str)

  }

  }

CALL

  (调用)

  用于将程序的执行交给其他的代码段,通常是一个子例程,同时保存必要的信息,从而使被调用段执行完毕后返回到调用点继续执行。

  描述

  将控制权传递给 Sub 过程或 Function 过程。

  语法

  [Call] name [argumentlist]

  Call 语句语法有以下部分:

  部分 描述

  Call 可选关键字。如果指定此关键字,则必须用括号把 argumentlist 括起来。例如:

  Call MyProc(0)

  name 必选。要调用的过程名。

  argumentlist 可选。传递给过程的变量、数组或表达式列表,用逗号分隔每一项。

  说明

  在调用过程时,不必使用 Call 关键字。然而,如果使用 Call 关键字调用要求参数的过程,则必须用括号将argumentlist 括起来。如果省略 Call 关键字,那么必须也同时省略 argumentlist 参数两边的括号。使用Call 语法调用内部函数或使用用户自定义函数,函数返回值都会被放弃。

  (phone call)打电话

个人工具
名字空间

变换
查看
操作
导航
工具箱