API Monitor(API监控工具)

Home / Article MrLee 2017-2-27 5316

前段时间接触SpyStudio,感觉这个工具非常强大,今天看了这篇CSDN的关于API Monitor的文章,感觉这个也非常强大。收藏于此。

概观

API Monitor是一个免费软件,可以让你监视和控制应用程序和服务,取得了API调用。 它是一个强大的工具,看到的应用程序和服务是如何工作的,或跟踪,你在自己的应用程序的问题。

产品特点

  • 64位支持 API监控支持监控的64位应用程序和服务。 64位版本只能用来监视64位应用程序和32位版本仅可用于监测的32位应用程序。 要监视在64位Windows的32位应用程序,您必须使用32位版本。 请注意,64位安装程序的API监测包括64位和32位版本。
  • 摘要视图与语法高亮 摘要窗口显示的API调用的信息。 这包括线程ID,并且作出API调用,与所有的参数和返回值的语法高亮API调用的DLL的名称。 如果API调用失败,也显示有关错误的信息。

    摘要视图

  • 13000 API定义,1,300多种COM接口 API显示器自带的API定义为超过13,000 API的几乎200 DLL的和超过17,000方法从1,300多种COM接口(壳牌,Web浏览器,DirectShow的,DirectSound的,DirectX的Direct2D的,DirectWrite的,Windows图像处理组件,调试器引擎,MAPI等)。 API的被组织成类别和子类别(如MSDN中指定)。 该API捕获过滤器允许您选择的API进行监视。

    API捕获过滤器

  • 结构,联合,枚举和标志 API Monitor可以解码和显示2000种不同的结构和联合,1000+枚举数据类型,800+标志。 内的结构,缓冲器和数组,也可以观看。

    结构

    工会

  • 缓冲区查看 API监视器可以显示输入和输出缓冲器。 显示的数据的量是从其他参数的API,或从所述API返回值自动计算。 数据的被捕获的最大量是可配置的。 下面的屏幕截图显示了ReadFile的 API调用后缓冲区。 长度lpBuffer通过查看lpNumberOfBytesRead的值的API调用已经执行后计算。 在这种情况下,返回的值是174,这是所显示的缓冲器的长度。

    参数 - 输入/输出

    缓冲区查看

  • 调用树 API监测显示一个调用树,显示API调用的层次结构。 下面的屏幕截图显示了CoGetClassObject调用由Visual Basic应用程序加载微软的Winsock ActiveX控件打了一个电话树。 ActiveX控件MSWINSCK.OCX使得调用WSAStartup和CreateWindowExA从DllMain中。

    调用树

  • 解码参数和返回值 两个参数和返回值可以显示在一个用户友好的格式。 下面的第一张截图显示了与显示,为参数值正常观看。 第二个屏幕显示经解码的参数值。 对于dwShareMode,API监视器显示FILE_SHARE_DELETE | FILE_SHARE_READ,而不是5,当解码参数值启用选项。此选项无论在参数窗格和摘要窗格可用。

    参数 - 正常显示

    参数 - 解码

  • 断点 API监视器可以让你通过API调用设置断点控制目标应用程序。 断点可以在API调用前被触发,在API调用后,在API故障,或如果API生成异常。 预调用断点允许你修改它们的参数传递给API之前,还是跳过API调用,并指定返回值和过去的错误代码。 后打电话错误断点允许你修改参数,返回值和过去的错误代码它们传递给调用者之前。 异常断点使你可以捕捉异常,以防止一个目标应用程序可能的崩溃。 全球断点也可以在API错误和异常引发的。 全部自动完成支持适用于所有支持枚举数据类型和标志。

    断点

  • 监控,而无需创建定义 API监控器现在可以监控任何DLL任何API,而无需XML定义来创建的。 新添加的外部DLL筛选允许DLL的添加和一个根据需要去除。 一旦DLL被添加,过滤器的工作原理完全一样,捕获过滤器; 个别的API可以被选择用于监测和断点可以设置。 此外,可任意指定从它们这些API的捕获参数的数目。 外部DLL过滤器也可以保存到一个文件中,允许多个集的DLL的基于目标应用程序加载。

    外部DLL过滤器

  • 进程内存编辑器 API监测包括内存编辑器,可以让你查看,编辑和在任何过程中分配内存。 内存编辑器还允许您更改的内存区域的保护。 在一个断点,内存编辑器可用于在目标进程查看和修改缓冲区。 在运行过程中的窗口上的任何程序或服务右键单击启动内存编辑器。

    内存编辑器

  • 呼叫过滤 API监控包括动态调用过滤功能,它允许您隐藏或显示基于一定的标准API调用。 超过25个不同的领域可以根据被过滤。 过滤可以用于,例如,发现时间超过50毫秒,以执行或以查看失败并返回错误代码2的Unicode API调用调用。

    显示过滤

  • COM监控 API监视器支持监视COM接口。 下面的屏幕截图显示了DirectShow中取得的GraphEdit COM方法调用。

    COM监控

    API监视器可以解码GUID的,IID的和REFIID的,并在人类可读的格式显示出来

    GUID解码

  • 解码错误代码 当API调用失败,API Monitor可以调用相应的错误函数来获取有关该错误的附加信息。 GetLastError函数,CommDlgExtendedError,于WSAGetLastError功能的支持。 此外,NTSTATUS和HRESULT错误代码可以显示在一个友好的格式。 在下面的截图中,API 连接失败。 API监视器确定的错误代码通过调用于WSAGetLastError并显示两个错误代码和红色的错误消息。

    解码API错误

  • 调用堆栈 API监视器可以让你捕获和查看每个API调用的调用堆栈。 下面的屏幕截图显示了NtCreateFile API调用堆栈。

    调用堆栈

  • 多个布局选项 在此版本的图形用户界面已被完全写入,并提供了许多有用的功能。 一些预先定义的布局可供选择,但是,您可以选择创建自己的自定义布局。 该GUI分为可停靠窗口“API捕获过滤器”,“正在运行的进程”,“输出”,“参数”,“十六进制缓冲区”,“调用栈”和“上钩进程”。 每个这些窗口可以被设置为“对接”,“浮动”,“隐藏”或“自动隐藏”。
  • 流程视图 正在运行的进程窗口显示正在运行的进程和服务,可以挂接的列表。 您也可以右键点击任何程序来启动内存编辑器。

    流程视图

    服务视图

  • 服务监控 支持Windows服务的监控。 下面的屏幕截图显示,当一个文件被打印到Microsoft XPS文档作家的Print Spooler服务的呼叫。 请注意,以使监控的服务,您的用户帐户必须有足够的权限(在Vista中管理员模式)。

  • 自定义DLL监控 API监视器支持创建任何DLL定义。 定义XML格式创建

    自定义DLL

  • 主题 带钩进程窗口显示先前上瘾或正在监视的进程。 不断扩大的过程中显示该进程中的所有线程。 标有“M”的线程是该进程的主线程。 标有“W”线程的工作线程。 不活动的主题是灰色的,并且还标有其图标的红色正方形。 每个线程显示线程ID,开始地址为线程。

    解码API错误

    要求

    Windows 2000和Windows XP 32位的Windows XP 64位版x64,Windows Vista 32位版,Windows Vista 64位版x64,Windows 7 32位,Windows 7的64位x64 的Windows 8 32位,Windows 8的64位x64

本文链接:https://www.it72.com/11850.htm

推荐阅读
最新回复 (0)
返回