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