国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

使用COM+參數(shù)化對(duì)象結(jié)構(gòu)編程技術(shù)

2019-11-18 18:49:52
字體:
供稿:網(wǎng)友
一、引言
COM+ 服?占夾g的一??核心理念就是系?y本身提供完成?S多面向企?I??用?_?l者的通用基本模?M(如??程

、物件?Y源池管理、事?輾??展芾懟⑹錄?服?展芾淼齲?,??系?y?O??人?T把精力集中在企?I??用本身的?I??

????上。
COM+提供了?S多新的服?蘸鴕恢碌墓芾磉行?h境,它??支援申明性??程模型(declarative PRogramming

model),也就是?f,?_?l人?T可以按?M可能通用的方式?_?l元件程式,把一些????留到配置?r刻再?_定。例

如,在?_?l一??COM+元件,它支援事?仗?理特性,但是我??在?_?l元件的?r候,?K不?_定它是否使用事?仗?

理特性,而把是否支援事?仗?理特性留待配置?r刻再作?Q定。有的??用可能??需要事?仗?理特性,而有的??

用可能?K不需要,我??可以通?^COM+管理程式配置元件的?儺????Q定元件是否支援事?仗?理特性。MTS安全模

型???H上是一??典型的申明性??程技?g,它把元件的安全角色?Y??留到配置?r刻再?o出?_切的定?x,而非??

程?r刻。COM+?^承了MTS的安全模型。
利用COM+的服?蘸凸芾砉ぞ擼??_?l一??COM+元件要比?_?l一??COM元件容易得多,因??COM+元件???H上是

建立在COM+系?y服?棧??A上的??用程式,我??可以避免底?臃爆?的??????理,如多??程的?K?l??理。通?^

COM+系?y服?眨?在?@得可靠性的同?r,也使的元件和??用程式更??於???駛?,在更?V泛的?????潤(rùn)w?F元件或

者??用的多?B性。
COM+ 的推出終于有機(jī)的統(tǒng)一了 COM/DCOM/MTS 的編程模式,使得我們不需要區(qū)分我們編寫的是什么類型

的COM 對(duì)象,所編寫的對(duì)象既是 COM 對(duì)象也是 COM+對(duì)象;在 COM+ 中物件?h境和截取(intercept) 技?g都

被合?愕????實(shí)? COM代理/存根中,所以可以通?^???實(shí)? CoCreateInstance 方法????建物件,?K且通?^

CreateInstance方法??建的MTS 元件同?涌梢栽?COM+ 正常?行和完全相容。

二、參數(shù)化 COM+ 對(duì)象結(jié)構(gòu)
在COM+ 中引入了許多新的服務(wù)何功能,參數(shù)化對(duì)象結(jié)構(gòu)就是其中一項(xiàng)功能。本功能是用來實(shí)現(xiàn)為COM+對(duì)

象創(chuàng)建提供一個(gè)字串參數(shù),組件對(duì)象通過IObjectConstruct接口來查詢管理員配置的字串參數(shù)。參數(shù)化對(duì)象

結(jié)構(gòu)的一個(gè)典型用途就是可以應(yīng)用到程序中作為 ADO 的連接字串參數(shù)。
IObjectConstruct 讓的方法或?qū)ο笸ㄟ^參數(shù)來控制相關(guān)對(duì)象處理功能,我們必須使用接口對(duì)象來實(shí)現(xiàn)此

接口,當(dāng)管理員將組件對(duì)象的對(duì)象結(jié)構(gòu)配置參數(shù)設(shè)置有效后,COM+ 將調(diào)用 IObjectConstruct.Construct 通

過IObjectConstructString來獲取參數(shù)化 COM+ 對(duì)象結(jié)構(gòu)中的字串參數(shù)。
IObjectConstructString 接口用來存取建立者字符串。本對(duì)象是一個(gè)Automation COM 對(duì)象,但無須通

過接口對(duì)象來實(shí)現(xiàn)他,COM+ 支持在調(diào)用 IObjectConstruct.Construct 時(shí)暴露此對(duì)象。
如何為元件輸入對(duì)象結(jié)構(gòu)字串。
1、在組件管理器中選取相應(yīng)的組件,右鍵彈出快捷菜單,然后點(diǎn)擊屬性
2、在組件屬性對(duì)話框,點(diǎn)擊激活屬性頁(yè)。
3、使能對(duì)象結(jié)構(gòu),輸入建立者字符串(例如一個(gè) ADO 連接字串)。

三、程序?qū)崿F(xiàn)

實(shí)現(xiàn)COMPlusServer

1、Import Type library->COM+ Services Type Library->Create Unit
2、建立一個(gè)新的 ActiveX Library Project
3、創(chuàng)建一個(gè)新的 MTS Data Module
4、到 Type Library 中選取 Project->Uses->點(diǎn)擊右鍵選擇 Show All Type Library->選擇COM+

Services Type Library
5、選擇 COM 的接口對(duì)象->Implements->點(diǎn)擊右鍵選擇 Insert Interface ->IObjectConstruct
6、在接口中定義一個(gè)新的的方法-> GetConString
7、到組件對(duì)象實(shí)現(xiàn)單元中實(shí)現(xiàn)以下代碼:
private
{ Private declarations }
objSonStr: IObjectConstructString;
StrDemo: WideString;

function TXXXServer.Construct(const pCtorObj: IDispatch): HResult;
begin
pCtorObj.QueryInterface(IID_IObjectConstructString, objSonStr);
StrDemo := objSonStr.Get_ConstructString;
end;

procedure TXXXServer.GetConString;
begin
if trim(StrDemo) = ' then
ShowMessage('沒有字串')
else
ShowMessage(StrDemo);
end;

客戶端程序
客戶端程序是最一般化的 Delphi 代碼:
procedure TForm1.Button1Click(Sender: TObject);
begin
DCOMConnection1.AppServer.GetConString;
end;

上一篇:能夠處理任何數(shù)據(jù)庫(kù)字段的Panel

下一篇:COM與DCOM的區(qū)別與聯(lián)系

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
學(xué)習(xí)交流
熱門圖片

新聞熱點(diǎn)

疑難解答

圖片精選

網(wǎng)友關(guān)注

主站蜘蛛池模板: 衡阳市| 封丘县| 奉节县| 博罗县| 拉孜县| 浦县| 区。| 嘉鱼县| 高密市| 蓬安县| 宁陕县| 汨罗市| 丰城市| 偏关县| 泾川县| 临夏县| 英德市| 辽中县| 奈曼旗| 天水市| 象州县| 永宁县| 安平县| 松阳县| 舞阳县| 井研县| 马尔康县| 万全县| 昆山市| 塔河县| 化隆| 麟游县| 祁东县| 滦南县| 巩义市| 玉门市| 安塞县| 灵宝市| 宣恩县| 汝州市| 浮山县|