我有一個設備,當某個應用程序正在向該應用程序發送數據時。我需要嗅探那些數據並檢索某些未顯示的信息。該設備是自定義的,由於某種原因沒有數據表。因此,必須嗅探通信並重建從應用程序發送到此設備的命令。所以我想用C#或C++來完成。現在我已經嘗試了每一個嗅探軟件,是的,他們嗅探它,但我希望能夠這樣生活和檢索數據並現場展示。反向工程師串行通信
謝謝
我有一個設備,當某個應用程序正在向該應用程序發送數據時。我需要嗅探那些數據並檢索某些未顯示的信息。該設備是自定義的,由於某種原因沒有數據表。因此,必須嗅探通信並重建從應用程序發送到此設備的命令。所以我想用C#或C++來完成。現在我已經嘗試了每一個嗅探軟件,是的,他們嗅探它,但我希望能夠這樣生活和檢索數據並現場展示。反向工程師串行通信
謝謝
要做到這一點是把你的軟件在設備和其它軟件之間的最簡單方法。然後,傳遞所有數據,捕獲你需要的任何東西。
要做到這一點,您需要使用串行端口環回軟件。那裏有很多。見http://www.virtual-serial-port.com/virtual-serial-port-kit.html。我個人使用過GPSGate的產品,但我相信有free loopback drivers available。
更復雜(但更加被動!)的方法是監視IOCTL。我不能指導你如何做到這一點,因爲我不知道,但這是需要研究的。 http://www.serial-port-monitor.com/的軟件使用此方法。
給你虛擬串口的另一種軟件是com0com(http://com0com.sourceforge.net/)。但是,它也具有集線器功能,可將設備的輸出發送到許多應用程序,這對您而言可能有用或可能沒有用,具體取決於您是否需要監視設備的輸出或雙向。
如果沒有其他的東西,它可能會給你一些開源的代碼,以便你自己的嗅探器,如果你沿着設備過濾器路由。但是如果你沿着這條路線走,你可能需要看看驅動程序簽名,如果你需要它在64位版本的Windows 7上工作。
這是什麼類型的設備?打印機,讀卡器,航天飛機?你能詳細介紹一下你已經開發的一些代碼片段嗎? –
需要說明的是,您對反向工程不感興趣,但是正在創建附加軟件,將從其他軟件和端口發送的現有數據流中提取信息。 – Brad
是的,你是完全正確的! – NoobRS232