2015-12-01 53 views
3

我有一個應用程序使用一些串行端口並運行一些系統調用,例如EscapeCommFunction,我想調試它。基本上我想要最接近我可以在Linux上得到strace。我發現最好的候選人似乎是logger.exe,但我無法弄清楚如何使用它。使用logger.exe來嗅探系統調用

我打過電話

logger.exe <application> <arg1> <arg2> <arg3> 

和嘗試,在出現的對話框中對我有意義所有組合。結果總是相同的:程序成功完成,即使在關閉記錄器後,Logger窗口或任何日誌文件也沒有輸出。

+0

通知文件路徑嘗試這樣做了嗎? http://superuser.com/questions/343942/how-can-i-monitor-a-virtual-serial-port-in-windows-7 – Marged

+1

http://www.rohitab.com/apimonitor –

回答

4

我同意@Alex K.並建議API Monitor

只需使用spyglass圖標查找要監視的方法並在其上添加複選標記即可。

API Monitor for EscapeCommFunction

然後要麼選擇一個過程,從「運行進程」選項卡或監控的新工藝(API監控將開始爲你)。

請注意,API監視器存在兩個版本:x86和x64,您應該爲要監視的應用程序選擇正確的位數。

您也可以在方法上設置一個斷點,這將觸發目標線程中的INT3。 「未處理的異常對話框」會彈出,你可以選擇一個調試器(在我的情況下是Visual Studio)。

API Monitor set breakpoint

關於鉻請求:我用Serial Monitor測試,作爲應用,啓用顯影劑模式,檢查demo.html。我使用Process Explorer的十字光標找出了正確的過程。然後我按照您的建議創建了片段

chrome.serial.connect("COM1", { 
    bitrate: 9200 
}, function(i) { 
    chrome.serial.setControlSignals(i.connectionId, { 
     dtr: false 
    }, function() { 
     console.log("done"); 
    }); 
}); 

並運行它。這是結果:

Monitor serial port in Chrome

+0

這適用於測試二進制文件,但它不適用於chrome。試試這個:監視chrome創建的任何子進程,打開一個具有串行權限的應用,並且chrome.serial.connect(「COM1」,{bitrate:9200},function(i){chrome.serial.setControlSignals(i.connectionId ,{dtr:false},function(){console.log(「done」);});});'你應該在監視器的其中一個進程中看到'EscapeCommFunction',但是那裏沒有...... [證明](https://code.google.com/p/chromium/codesearch#chromium/src/device/serial/serial_io_handler_win.cc&l=485)這是實際打電話。有任何想法嗎? – fakedrake

+0

@ fakedrake:看我更新的回答 –

+0

哇我一定錯過了那裏的東西。非常感謝! – fakedrake

1

日誌文件始終在桌面not alterable

C:\Documents and Settings\Admin\Desktop>DIR /S /B LOGE* 
File Not Found 

執行記錄的logexts subdir創建

C:\Documents and Settings\Admin\Desktop>LOGGER CALC.EXE 
  1. 一次記錄器窗口打開
  2. 選擇在左窗格中的要求,然後點擊API包括 單選按鈕
  3. 默認情況下沒有被選擇,什麼都不會被記錄
  4. 創建將包含什麼輕型貨車文件顯示
  5. 你需要選擇API和包括他們登錄
  6. 您可以編寫自己的清單文件專門loggging
  7. 後您的會話在關閉logger.exe你將有一輛輕型貨車 文件
  8. ,你可以在使用logviewer.exe文件打開這個LGV文件 - >打開無 命令行選項

的子目錄已爲會議

C:\Documents and Settings\Admin\Desktop>DIR /S /B LOGE* 
C:\Documents and Settings\Admin\Desktop\LogExts 

導航到子目錄創建和傾倒的DIR結構

C:\Documents and Settings\Admin\Desktop>CD LogExts 

C:\Documents and Settings\Admin\Desktop\LogExts>ls -la 
total 32 
drwxr-xr-x 4 Admin Administ  0 Dec 2 10:31 . 
drwxr-xr-x 1 Admin Administ  0 Dec 2 10:31 .. 
-rw-r--r-- 1 Admin Administ 64304 Dec 2 10:33 CALC.EXE.lgv <--- 
-rw-r--r-- 1 Admin Administ  0 Dec 2 10:31 CALC.EXE.txt 

開口logviewr以查看LGV文件 C:\ Documents和Settings \管理員\桌面\ LogExts> LogViewer的

的API的截屏記錄和API的統計登錄窗口標題
enter image description here