Delphi中"包"的妙用

发表于:2008-05-20来源:作者:点击数: 标签:妙用DELPHIDelphidelphi
关键字:delphi 自动化测试 框架的基础是钩子,也就是常说的HOOK机制。但这在实际的应用过程中可能会遇到一些问题。 一旦要做钩子,那么就必须获取函数地址。由于我原先设计的钩子的目标函数,都是Delphi的内部函数,也就是说,这些函数在编译之后,很难找到
关键字:delphi自动化测试框架的基础是钩子,也就是常说的HOOK机制。但这在实际的应用过程中可能会遇到一些问题。

  一旦要做钩子,那么就必须获取函数地址。由于我原先设计的钩子的目标函数,都是Delphi的内部函数,也就是说,这些函数在编译之后,很难找到。

  当然了,也是有几种方式可以找到的:

  将代码植入到系统中,编译的时候可以直接找到。

  编译的时候,带上Map文件,可以通过Map找到函数地址。测试框架以Dll的方式远程注入。

  Delphi中的包,可以公布这些函数的地址

  前两种方式,有一个最大的缺点,在于必须为自动化测试,特别编译一个版本。虽然说可以接受,但显然不是最好的方案。第三种方案虽然好,但是前提是系统必须构建在带包编译的基础上。

  幸好,我们目前的测试的系统就具备这样的条件。

原文转自:http://www.ltesting.net