如題,用C#怎麼實現監聽已經打開的串口,我從網上查了查都不能實現
實現監視需要的工作很多。你有這功夫,不如買一根1分2的線來做監視了。如果研究之用或是項目必須。要考慮api鉤子,勾住createfile,readfile,writefile,KernelIoControl等相關的api,並自己重新封裝數據,轉發。
當然,如果只是想實現效果,你當然還有折中的辦法,下載一個SerialNull軟件,虛擬串口,這樣你虛擬一對串口,例如 COM8<-->COM9
然後實際的比如想監視COM1。那你可以自己實現收COM1數據,轉發給COM8,然後收COM8數據轉發給COM1的操作,並同時,讓另一個軟件來操作COM9而不是真實的COM1。這樣你自己做一個橋接軟件。就可以在你的橋接軟件中監視數據。當然,這個方法是我獨創的,轉載要註明:csdn.wuyazhe(逍遙)提供。以前做過類似的就是對GPS對應的端口進行監聽,使用的就是createfile,readfile,writefile,KernelIoControl
如果是你自己來調用打開的話,你可以使用SerialPort,來實現監聽
不是我自己調用,我是想監聽已被別的程序打開的端口
在一般的程序中內存的分配有5種,棧區、堆區、全局區、文字常量區和程序代碼區。棧區是由編譯器自動分配和釋放,存放函數的參數值、局部變量的值等值類型的數據,其操作方式類似與數據結構中的棧。堆一般由程序員自動分配釋放,若程序員不釋放,程序結束時可能由操作系統自動回收,分配方式類似於數據結構中的鏈表,存放的是引用類型的值。
有必須的話可以採用異步響應的試,等收到對方的響應之後再傳下一部分。
我覺得可以用文件共享然後映射驅動器的方式,之後寫一個服務,或者後臺運行的程序檢查該“虛擬硬盤”中的文件是否發生改動(這個在網上一搜一大片,另外,介紹IO的書裏應該都有),一旦發現新文件就複製到本地就可以了。
ftp客戶端部分可以下一個命令行的ftp工具,然後用C#做一個shell就ok啦。
我也是最近也爲選書煩惱得要死的人……現在國內大多數書都沒怎麼體諒到初學者的苦惱,一般直接給大段代碼給你,簡單的入門操作卻完全不提……我之前看過第Wrox入門經典一版的覺得還行,後來有見過2、3版但沒怎麼看,因從事其他事情就沒再看這些了