組件技術一直都想用一下,但是無奈技術門檻太高,爲了項目進度需要不得不退而求其次,使用那些自己有把握的技術,大好青春浪費在了重複勞動之中。拜今年經濟危機所賜,項目一下子少了許多,於是萌生了深入學習ATL的念頭。
衆所周知,COM和ATL早已是昨日黃花,但是餘威尚在,在工控領域和大多數商業軟件都可以看到它們的身影,可以說是Windows平臺編程技術的No1。
工控領域大量用到串口設備,如485的模擬量變送器,232的稱重平臺..,如果項目中需要用到這些設備,則必須撰寫串口通訊程序,然後和接線進行測試。有時候因爲設備在現場,還必須提着電腦或控制器到現場去連線,在外地的時候更是苦不堪言。今年年初我得到一塊1拖4的USB轉232的通訊模塊,5,6月就有了編寫虛擬設備的想法。
串口設備的工作原理相對簡單:有的是接到Client發來的字符串,返回數據;有的是以固定週期(如50ms)向Client發送數據。
如果用電腦程序仿真串口設備的工作,指揮串口響應工作。PLC或者電腦永遠也不可能知道串口線的另一端連接的到底是什麼。
於是我確定下來先做電子秤的串口仿真程序,因爲這個東西在我的項目中用的最多。
至於選用的編程語言,其實什麼都可以。但是我決定用ATL折騰一下。
因爲這是我的第一個COM項目,所以計劃分2步走
1.撰寫組件,可以用在MFC或者VB中
2.撰寫ActiveX組件,可以用在組態軟件中,如組態王,Intouch...具體哪個可以嵌入,到時候再說。