<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 基于COM的輕量級組件技術(shù)的簡(jiǎn)單實(shí)現

基于COM的輕量級組件技術(shù)的簡(jiǎn)單實(shí)現

作者: 時(shí)間:2010-09-01 來(lái)源:網(wǎng)絡(luò ) 收藏

2.4 配置文件

配置文件主要用來(lái)標識當前程序所需要加載的,以及的位置。配置文件可分為兩部分:

第一部分用于標識加載的和加載順序;第二部分用于標識組件的位置。圖8所示是配置文件的信息示意圖。

DLL/SO組件編寫(xiě)規則

組件要求組件DLL/SO應按照約定的格式編寫(xiě),只有組件庫加載后,才能為客戶(hù)端創(chuàng )建組件接口指針。

一個(gè)類(lèi)似于IUnknown的基接口,通常是所有接口都需要繼承的,其代碼如下:

Release函數可用來(lái)釋放組件接口對象。

每個(gè)DU/SO中都需要有一個(gè)類(lèi)IPlugin接口,該類(lèi)稱(chēng)為組件類(lèi),Init函數在ExtensionSysten中被調用時(shí),可以在其中完成組件的初始化工作,其具體代碼如下:


每個(gè)組件DLL/SO都需要導出一個(gè)創(chuàng )建接口的函數,形式如下:

4 結束語(yǔ)

QT本身提供有插件機制,但是,加載方式對用戶(hù)是不可見(jiàn)的,因此,出現問(wèn)題后,往往不利于調試。而本文所述的組件編寫(xiě)方式和加載方式使用約定的形式,這種形式并不局限于QT中,而是在支持標準c++的編譯環(huán)境中都可以使用,因而是一種通用的組件。


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>