2012-11-01 23 views
3

我需要從COM端口下抓取流量,在MS-DOS從COM抓取流量

我發現程序ComSpy(必須抓住從COM端口的數據並傳送到PRN,這樣做在TSR),運行它,運行prn2file.exe和運行分析程序,但它並沒有記錄。

是否有可能寫一個內存駐留程序(MS-DOS),以獲得從COM端口的所有流量,並記錄到文件中,但不與其他程序(與COM端口通過COM(工作溝通干擾中斷))?

+1

你將不得不闖入博物館找到這樣的工具。這裏沒有關於購物問題和時間機器購買的話題。 –

回答

0

是的,這是可能的。只需編寫一個掛接COM中斷的TSR並執行相應的dos入口監視。不要使用BIOS/DOS的COM讀/寫例程,因爲它們非常慢。不是什麼大不了的事情,一天有數十億本書被寫出來,你應該可以谷歌一些。 :-)

+0

但是,如果我鉤住COM中斷,並從接收器讀取字節,分析後的程序不會得到它。 – Tvister

+0

更好地發佈一些代碼。沒有這些,我只能說「顯然你做得不對」。 :-) –

+0

我不認爲你的回答是真實的。是的,您可以在TSR中安裝自己的串行端口ISR。但是,兩個串行端口ISR不能同時處於活動狀態:您可以將ISR連接到計時器滴答或多路複用中斷等服務......但串行端口ISR也使用IN和OUT讀取和寫入串行端口數據,而且您不能兩個ISR都使用IN來讀取相同的數據(串行端口硬件只會返回一次相同的數據)。你可以做的是安裝一個新的INT 14h服務(如果你所掛鉤的軟件願意從BIOS API中讀取而不是使用自己的ISR)。 – ChrisW