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官網