API Monitor(API调用监控软件)是一款功能强大、非常实用的API调用监控软件,API Monitor过滤器配置文件是存储您喜欢的显示器设置以在其他会话中使用的有效方式。可以用来查看应用程序和服务的工具流程。
本教程演示了如何使用 API Monitor 断点来修改应用程序的输出。对于本示例,我将使用由Napalm开发的名为 Asteroids 的应用程序(感谢您让我在本教程中使用它)。以下屏幕截图显示了应用程序的输出。我们将使用 API Monitor Breakpoint 修改输出,以便应用程序显示我们的文本。
第一步是确定应用程序用于显示文本的 API。在捕获过滤器中选择图形和多媒体类别。
使用File 菜单中的Hook Process…命令运行应用程序。API Monitor 中的“摘要”视图将显示应用程序调用的 API 列表。由于我们知道应用程序显示“Asteroids”,我们可以搜索该文本。搜索中的第一个命中是TextOutA API。这看起来像我们感兴趣的那个,所以右键单击 API 并设置一个Before Call断点。这将允许我们在将参数传递给 API 之前修改参数。
使用Hook Process...命令再次运行应用程序。这一次 API Montior 将在应用程序调用 TextOutA API 时显示一个 Breakpoint 窗口。我们现在可以修改参数以显示我们想要的文本。
点击Continue将修改后的参数传递给 API。应用程序现在应该显示修改后的文本。
监控您的第一个应用程序
启动 API 监视器。我们将在本教程中使用 64 位版本,但 32 位版本的工作方式相同。选择应监控的 API。在本教程中,我们将监控CreateFileA、CreateFileW和NtCreateFile。我们将使用 find 函数来定位这些 API。单击API Capture Filter窗口中的某处,然后按CTRL+F或从菜单中选择Edit->Find。输入CreateFile并单击Find Next按钮。单击 API 名称旁边的复选框以启用它。启用所有三个 API 后,继续执行。
我们现在需要选择要监控的应用程序。您可以从菜单中选择File->Hook Process,或者单击Hooked Processes 窗口中的Hook New Process按钮。
这将打开Hook Process对话框。单击“进程”的“浏览”图标并找到 notepad.exe。在Arguments 下,输入不存在的文件的名称。在开始在目录中自动填充,不需要改变。
单击确定按钮。这将启动记事本,它应该显示一个消息框,指示找不到该文件。关闭消息框并退出记事本。