新聞中心

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

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

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

2.4 配置文件

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

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

DLL/SO組件編寫規(guī)則

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

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

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

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


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

4 結(jié)束語(yǔ)

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


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

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉