最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

通訊協(xié)議029——全網(wǎng)獨有的OPC AE知識四之接口(十三)

2023-07-31 08:46 作者:zhouwl72  | 我要投稿

本文介紹OPC AE規(guī)范的客戶端相關(guān)接口的相關(guān)知識,更多通信資源請登錄網(wǎng)信智匯(wangxinzhihui.com)。OPC AE規(guī)范描述了OPC事件服務(wù)器應(yīng)該實現(xiàn)的對象和接口,實現(xiàn)在多個OPC客戶端間共享事件和警報條件。

1、IOPCEventSink

為了使用連接點,客戶端必須創(chuàng)建一個同時支持IUnknown以及IOPCEventSink接口??蛻舳藢鬟f一個指向IUnknown接口的指針(而不是IOPCEventSink)轉(zhuǎn)換為事件訂閱中正確IConnectionPoint的Advise方法(如從IConnectionPointContainer::FindConnectionPoint或EnumConnectionPoints獲得)。這個事件服務(wù)器將調(diào)用客戶端對象上的QueryInterface以獲取IOPCEventSink接口。注意:事務(wù)必須以這種方式執(zhí)行才能使接口編組工作適用于本地或遠程服務(wù)器。

事件服務(wù)器調(diào)用OnEvent方法向客戶端通知滿足特定事件訂閱的篩選條件的事件。

客戶端只需要提供OnEvent的完整實現(xiàn)。IOPCEventSink沒有其他方法。

請注意,回調(diào)可能有兩個原因:事件通知或刷新??梢跃帉懸粋€服務(wù)器,使其并行執(zhí)行其中的幾個操作。在這種情況下,客戶端可以通過檢查OnEvent回調(diào)中的bRefresh參數(shù)來確定特定回調(diào)的“原因”。

?

2、IOPCEventSink方法

1)HRESULT OnEvent(

[in] OPCHANDLE hClientSubscription,

[in] BOOL bRefresh,

[in] BOOL bLastRefresh,

[in] DWORD dwCount,

[in, size_is(dwCount)] ONEVENTSTRUCT* pEvents

);

此方法由客戶端提供,用于處理來自O(shè)PCEventSubscription的事件通知。無論是刷新還是標準事件通知,都可以調(diào)用此方法。

客戶端從該函數(shù)返回后,服務(wù)器需要釋放pEvents。

此外,根據(jù)COM規(guī)范,客戶端在回調(diào)中允許哪些函數(shù)方面受到限制。例如,不能調(diào)用阻塞函數(shù)。

回調(diào)可能由于以下原因之一而發(fā)生:

? 發(fā)生了一個或多個新事件。

? 這是對刷新的響應(yīng)。

?

3、IOPCShutdown

為了使用此連接點,客戶端必須創(chuàng)建一個同時支持IUnknown和IOPCShutdown接口??蛻舳藢鬟f一個指向IUnknown接口的指針(而不是IOPCShutdown)轉(zhuǎn)換為服務(wù)器中正確的IConnectionPoint的Advise方法(從IConnectionPointContainer::FindConnectionPoint或EnumConnectionPoints)。服務(wù)器將調(diào)用對客戶端對象執(zhí)行QueryInterface以獲取IOPCShutdown接口。請注意,交易必須以這種方式執(zhí)行,才能使接口編組在本地或遠程服務(wù)器。

當(dāng)事件服務(wù)器需要關(guān)閉時,將調(diào)用此接口上的ShutdownRequest方法??蛻舳藨?yīng)該釋放此事件服務(wù)器的所有連接和接口。

連接到多個服務(wù)器(例如事件服務(wù)器和/或其他服務(wù)器,例如來自一個或多個供應(yīng)商的數(shù)據(jù)訪問服務(wù)器)的客戶端應(yīng)該為每個對象維護單獨的關(guān)閉回調(diào),因為任何服務(wù)器都可以獨立于其他服務(wù)器關(guān)閉。

?

4、IOPCShutdown方法

1)HRESULT ShutdownRequest (

[in, string] LCPWSTR szReason

);

此方法由客戶端提供,以便服務(wù)器可以請求客戶端斷開與服務(wù)器的連接。客戶端應(yīng)取消所有連接并釋放所有接口。

關(guān)閉連接點是基于“每個服務(wù)器對象”的。也就是說,它與CoCreate創(chuàng)建的對象有關(guān)…如果一個客戶端連接到多個服務(wù)器對象,那么它應(yīng)該單獨監(jiān)控每個對象(使用單獨的回調(diào))以獲取關(guān)閉請求。

更多通信資源請登錄網(wǎng)信智匯(wangxinzhihui.com)。


通訊協(xié)議029——全網(wǎng)獨有的OPC AE知識四之接口(十三)的評論 (共 條)

分享到微博請遵守國家法律
黑龙江省| 霍山县| 汨罗市| 阜平县| 福贡县| 哈尔滨市| 东安县| 北宁市| 庆元县| 汉阴县| 济南市| 伊金霍洛旗| 高青县| 高邑县| 盐池县| 扎鲁特旗| 荣昌县| 西藏| 阿城市| 元朗区| 余姚市| 德惠市| 沐川县| 福鼎市| 卫辉市| 新宾| 泸州市| 五河县| 柳林县| 灵宝市| 邵东县| 玛沁县| 辉南县| 元阳县| 芮城县| 冕宁县| 尚志市| 博野县| 鄄城县| 常德市| 昆山市|