樓宇自動化系統使用ATL實現COM接口的編程!

欄目:行業動態 作者:三水智能化 發布時間:2020-04-27 關鍵詞: 樓宇自動化系統
分享到:
?在樓宇自動化系統的系統集成中應用OPC(OLE for process control)技術可以很方便的實現分布式計算平臺的過程,有利于軟件互連,從而形成一個開放性系統。 Microsoft提出的ATL是一個基于C++平臺的框架,主要用于M icrosoft的組件對象模型(COM)的軟件開發。典型的OPC客戶機/服務器關系如圖2所示。

樓宇自動化系統的系統集成中應用OPC(OLE for process control)技術可以很方便的實現分布式計算平臺的過程,有利于軟件互連,從而形成一個開放性系統。 Microsoft提出的ATL是一個基于C++平臺的框架,主要用于M icrosoft的組件對象模型(COM)的軟件開發。典型的OPC客戶機/服務器關系如圖所示。

樓宇自動化系統使用ATL實現COM接口的編程!

使用ATL創建COM服務器,編寫相應對象完成如下任務:服務器接受客戶機的請求,從服務器的相應數據庫提取數據,傳送給客戶機。以客戶機提出請求需要查詢建筑物的溫度狀況為例,說明程序設計過程:

第1步:新建項目。在Projects選擇中ATL COM AppW izard,然后建立文件名(chengxu)。“Location”編輯框中指定工程的存放位置,然后單擊ok按鈕。

第2步:創建一個進程內服務器(Server DLL)。選擇的類型是動態鏈接庫“Dynamic Link Library——DLL”選項,單擊“Finish”按鈕。向導將自動產生相應的文件。然后出現“New Project Information”窗口告訴你向導將要創建一些什么文件。確認后單擊OK按鈕。

第3步:創建新的ATL對象。確定在VC的IDE環境中見到“Workspace View”。選中后單擊右鍵并從彈出菜單中選擇“New A TL Ob ject”。選擇(Simp le Object),在“Short Name”文本編輯框中輸入“First_ATL”。單擊“A ttributes”標簽。其中有幾組單選按鈕選項和幾個復選框。第一組單選按鈕是線程模型“Threading M odel”,取缺省值“Apartm ent M odel”。第二組單選按鈕是接口“Interface”,單擊“Dual”,也就是雙接口。最后,第三組單選按鈕是聚合“Aggregation”,因為不想涉及接口的聚合,所以在此選擇“No”。

第4步:將添加方法。選中“IFirst_ATL”后單擊右鍵并選擇“Add M ethod”。看到“Add M ethod to Interface”對話框。在下一個方法名編輯框“Method Name”中輸入方法名,后一個“Parameters”編輯框輸入使用的參數。方法名;shuju1參數則輸入[in] int Num1,long*Returnval采用一個輸入參數判斷用戶需要的查詢服務,其中Num1將對應服務器相應數據,Returnval為一個指針,進行查詢后的數據傳遞工作。添加相應的實現代碼。

第5步:數據庫銜接。在C lassview中加入MFC類,類名shu ju lian jie。在 Bass class:中選擇 CdaoRecordset并且銜接數據庫。見圖1。

第6步:加入處理數據對象方法。添加相應的實現代碼。

第7步:進行服務器測試。

用VC++測試這個COM服務器。

創建一個新的W in32控制臺應用程序。選擇“Win32 Console App lication”并取名為“Test_ ATL”。單擊OK按鈕并接受對話框中的缺省設置。單擊“Finish”按鈕,然后再按OK按鈕。這樣就創建好了一個新的工程。

向工程中添加一個文件。從彈出的窗口中選擇“C++Source File”并為它取名為“Test_ATL.cpp”。按下OK按鈕。這樣工程中就有了一個.cpp文件。

在這個文件中添加測試COM服務器的代碼:

樓宇自動化系統使用ATL實現COM接口的編程!

服務器端運行后進行測試。測試程序將Num1=1。服務器得到請求,返回數據,并得到輸出“temperature is 23C”。


主站蜘蛛池模板: 中文字幕日韩wm二在线看| 吃奶摸下激烈免费视频免费| 亚洲制服丝袜在线播放| 94久久国产乱子伦精品免费| 波多野结衣资源在线| 天堂а√在线官网| 亚洲色偷偷偷综合网| 99久久综合久中文字幕| 特级毛片a级毛片在线播放www| 大陆一级毛片免费视频观看| 亚洲综合色丁香婷婷六月图片| 999国产精品999久久久久久| 波多野结大战三个黑鬼| 国产高清一区二区三区视频| 亚洲最大成人网色| 四虎最新永久免费视频| 最近高清中文字幕在线国语5| 国产欧美日韩另类精彩视频| 久久精品这里有| 被民工蹂躏的雯雅婷| 成全视频在线观看免费高清动漫视频下载 | 最近高清中文在线国语字幕| 岛国视频在线观看免费播放| 动漫乱理伦片在线观看| JAPANESEHD熟女熟妇伦| 欺凌小故事动图gif邪恶| 国产精品视频免费播放| 亚洲a级片在线观看| 高潮毛片无遮挡高清免费| 日本xxxwww| 免费观看无遮挡www的小视频| AAA日本高清在线播放免费观看| 水蜜桃视频在线观看免费| 国产精品久久久久久久网站| 久草视频免费在线观看| 色狠狠一区二区| 好吊操在线视频| 亚洲日韩一区二区一无码| 国产精品久久自在自线观看| 摸BBB揉BBB揉BBB视频| 免费**毛片在线播放视|