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接口(Shell,Web浏览器,DirectShow,DirectSound,DirectX,Direct2D,DirectWrite,Windows图像处理组件,调试器引擎,MAPI等)。 API的被组织成类别和子类别(如MSDN中指定)。 该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的基于目标应用程序加载。

进程内存编辑器

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

调用过滤

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

COM监控

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

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

解码错误代码

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

调用堆栈

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

多个布局选项

在此版本的图形用户界面已被完全写入,并提供了许多有用的功能。 一些预先定义的布局可供选择,但是,您可以选择创建自己的自定义布局。 该GUI分为可停靠窗口“API捕获过滤器”,“正在运行的进程”,“输出”,“参数”,“十六进制缓冲区”,“调用栈”和“上钩进程”。 每个这些窗口可以被设置为“对接”,“浮动”,“隐藏”或“自动隐藏”。

进程视图

正在运行的进程窗口显示正在运行的进程和服务,可以挂接的列表。 您也可以右键点击任何程序来启动内存编辑器。

服务监控

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

自定义DLL监控

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

主题

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

要求

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

下载

API Monitor v2 (Alpha-r13) - x86 32-bit - - 32-bit for Windows 2000, Server 2003, XP, Vista, Windows 7, Server 2008 and Windows 8
API Monitor v2 (Alpha-r13) - x64 64-bit - - 64-bit for Windows XP, Vista, Windows 7, Server 2008 and Windows 8 x64 (Includes 32-bit version)
API Monitor v2 (Alpha-r13) - Portable - - Portable - Runs without installing - 32-bit and 64-bit

参考资料

API Monitor(API监控工具)

API Monitor官网

API Monitor简介(API监控工具)的更多相关文章

  1. API Monitor程序分析工具简介

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

  2. API Monitor v2.0 Alpha-r13 (32+64) 汉化版

    API Monitor v2.0 Alpha-r13 (32+64) 汉化版: 链接: https://pan.baidu.com/s/1jIx5znC 密码: 4538 本软件已最大化汉化,已经趋于 ...

  3. [转]SQLITE3 C语言接口 API 函数简介

    SQLITE3 C语言接口 API 函数简介 说明:本说明文档属作者从接触 SQLite 开始认识的 API 函数的使用方法, 由本人翻译, 不断更新. /* 2012-05-25 */ int sq ...

  4. dom4j API使用简介

    dom4j API使用简介 功能简介 dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个非常非常优秀的Java XML API,具有性能优异.功能强大和极 ...

  5. Redis和nosql简介,api调用;Redis数据功能(String类型的数据处理);List数据结构(及Java调用处理);Hash数据结构;Set数据结构功能;sortedSet(有序集合)数

    1.Redis和nosql简介,api调用 14.1/ nosql介绍 NoSQL:一类新出现的数据库(not only sql),它的特点: 1.  不支持SQL语法 2.  存储结构跟传统关系型数 ...

  6. 全国天气预报信息数据 API 功能简介与代码调用实战视频

    此文章对开放数据接口 API 之「全国天气预报信息数据 API」进行了功能介绍.使用场景介绍以及调用方法的说明,供用户在使用数据接口时参考之用,并对实战开发进行了视频演示. 1. 产品功能 接口开放了 ...

  7. RabbitMQ系列教程之七:RabbitMQ的 C# 客户端 API 的简介(转载)

    RabbitMQ系列教程之七:RabbitMQ的 C# 客户端 API 的简介 今天这篇博文是我翻译的RabbitMQ的最后一篇文章了,介绍一下RabbitMQ的C#开发的接口.好了,言归正传吧. N ...

  8. 黑客编程教程(二)Win API编程简介

    第二节 Win API编程简介 下面介绍一下WIN API. 我们需要自己编写一个工具时,必然会用到很多操作windows和控制windows的函数,这些函数就是windows API. API是Ap ...

  9. API Monitor---------------Using API Monitor to crack copy protected software

    For this tutorial we will be using Mirial Softphone which is a HD video conferencing application. Th ...

随机推荐

  1. Hadoop 中利用 mapreduce 读写 mysql 数据

    Hadoop 中利用 mapreduce 读写 mysql 数据   有时候我们在项目中会遇到输入结果集很大,但是输出结果很小,比如一些 pv.uv 数据,然后为了实时查询的需求,或者一些 OLAP ...

  2. Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记

    以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...

  3. javascript中的操作符详解1

    好久没有写点什么了,根据博主的技术,仍然写一点javascript新手入门文章,接下来我们一起来探讨javascript的操作符. 一.前言 javascript中有许多操作符,但是许多初学者并不理解 ...

  4. zookeeper源码分析之五服务端(集群leader)处理请求流程

    leader的实现类为LeaderZooKeeperServer,它间接继承自标准ZookeeperServer.它规定了请求到达leader时需要经历的路径: PrepRequestProcesso ...

  5. SQL Server2016升级前几点自检

    SQL Server2016已经出来一段时间了,而且最新的SP1包也于2016年11月18日正式发布,各种新的特性推出让我们跃跃欲试.那么对于我们真实的业务环境,特别是生产环境要不要"跟风& ...

  6. WPF 普通属性变化通知

    问题描述:使用ObservableCollection<OrderItem> source 给Datagrid.ItemsSource赋值,在后台更新source集合后,前台Datagri ...

  7. redis成长之路——(二)

    redis操作封装 针对这些常用结构,StackExchange.Redis已经做了一些封装,不过在实际应用场景中还必须添加一些功能,例如重试等 所以对一些常功能做了一些自行封装SERedisOper ...

  8. bzoj1901--树状数组套主席树

    树状数组套主席树模板题... 题目大意: 给定一个含有n个数的序列a[1],a[2],a[3]--a[n],程序必须回答这样的询问:对于给定的i,j,k,在a[i],a[i+1],a[i+2]--a[ ...

  9. Java—恶心的java.lang.NumberFormatException解决

    项目中要把十六进制字符串转化为十进制, 用到了到了Integer.parseInt(str1.trim(), 16):这个是不是后抛出java.lang.NumberFormatException异常 ...

  10. JQuery阻止事件冒泡

    冒泡事件就是点击子节点,会向上触发父节点,祖先节点的点击事件. 我们在平时的开发过程中,肯定会遇到在一个div(这个div可以是元素)包裹一个div的情况,但是呢,在这两个div上都添加了事件,如果点 ...