導航:首頁 > 編程語言 > comdcom編程指南

comdcom編程指南

發布時間:2023-07-04 03:07:24

『壹』 COM組件的COM方法

COM是開發軟體組件的一種方法。組件實際上是一些小的二進制可執行程序,它們可以給應用程序,操作系統以及其他組件提供服務。開發自定義的COM組件就如同開發動態的,面向對象的API。多個COM對象可以連接起來形成應用程序或組件系統。並且組件可以在運行時刻,在不被重新鏈接或編譯應用程序的情況下被卸下或替換掉。Microsoft的許多技術,如ActiveX, DirectX以及OLE等都是基於COM而建立起來的。並且Microsoft的開發人員也大量使用COM組件來定製他們的應用程序及操作系統。
COM所含的概念並不止是在Microsoft Windows操作系統下才有效。COM並不是一個大的API,它實際上像結構化編程及面向對象編程方法那樣,也是一種編程方法。在任何一種操作系統中,開發人員均可以遵循「COM方法」。
一個應用程序通常是由單個的二進制文件組成的。當編譯器生成應用程序之後,在對下一個版本重新編譯並發行新生成的版本之前,應用程序一般不會發生任何變化。操作系統,硬體及客戶需求的改變都必須等到整個應用程序被重新生成。
這種狀況已經發生變化。開發人員開始將單個的應用程序分隔成單獨多個獨立的部分,也即組件。這種做法的好處是可以隨著技術的不斷發展而用新的組件取代已有的組件。此時的應用程序可以隨新組件不斷取代舊的組件而漸趨完善。而且利用已有的組件,用戶還可以快速的建立全新的應用。
傳統的做法是將應用程序分割成文件,模塊或類,然後將它們編譯並鏈接成一個單模應用程序。它與組件建立應用程序的過程(稱為組件構架)有很大的不同。一個組件同一個微型應用程序類似,即都是已經編譯鏈接好並可以使用的二進制代碼,應用程序就是由多個這樣的組件打包而得到的。單模應用程序只有一個二進制代碼模塊。自定義組件可以在運行時刻同其他的組件連接起來以構成某個應用程序。在需要對應用程序進行修改或改進時,只需要將構成此應用程序的組件中的某個用新的版本替換掉即可。
COM,即組件對象模型,是關於如何建立組件以及如何通過組件建立應用程序的一個規范,說明了如何可動態交替更新組件。
ActiveX與com組件
ActiveX是Microsoft對於一系列策略性面向對象程序技術和工具的稱呼,其中主要的技術是組件對象模型(COM)。在有目錄和其它支持的網路中,COM變成了分布式COM(DCOM)。在創建包括ActiveX程序時,主要的工作就是組件,一個可以自足的在ActiveX網路(網路主要包括Windows和Mac)中任意運行的程序。這個組件就是ActiveX控制項。ActiveX是Microsoft為抗衡Sun Microsystems的java技術而提出的,此控制項的功能和java applet功能類似。
如果您使用的是Windows操作系統,您或許會注意到一些以OCX結尾的文件。OCX代表「對象鏈接與嵌入控制項」(OLE),這個技術是Microsoft提出的程序技術,用於處理桌面文件的混合使用。COM的概念已經取代OLE的一部分,Microsoft也使用ActiveX控制項代表組件對象。
組件的一大優點就是可以被大多數應用程序再使用(這些應用程序稱為組件容器)。一個COM組件(ActiveX控制項 )可由不同語言的開發工具開發,包括C++和Visual Basic或PowerBuilder,甚至一些技術性語言如VBScript。
ActiveX控制項在Windows 95/NT和Macintosh中運行,Microsoft還准備支持UNIX的ActiveX控制項。

『貳』 自學計算機編程應該看些什麼書

一:第一階段
C語言-------《C語言設計》 作者:譚浩強
大多數人都推薦譚浩強這本書,譚浩強的C語言程序設計,我覺得更適合當教科書,主要是篇幅沒有那麼大,書本的內容不是很全,由老師帶入門是最好的。

《C Primer Plus》第五版 作者:Stephen Prata
這本書比較厚,內容也比較基礎,擴展的也比較廣,自學容易上手,唯一的缺陷在於它是外國人編寫,而國內的翻譯往往讓人難以滿意,如果你有較好的英語水平,最好閱讀英文版的。

《C語言入門經典》第四版 作者:Ivor Horton

二:第二階段
這一階段看個人主攻的方向了,安卓一般就JAVA,PC游戲、軟體C++,也有推薦C#,這些都是主流語言,其他語言要看個人愛好與發展。
面向對象的語言,一般懂一門,之後要轉其他語言也很容易的,其實思想都差不多,主要的不同在於語法。C#容易上手,一個月入門,一年精通,而C++卻有點難,一年入門,二十年也未必敢說自己精通。如果有時間,可以了解一下匯編語言。

C++ Primer, 4rd Edition

(入門類:
C++ Primer, 4rd Edition
Thinking in C++, 2nd Edition
The C++ Standard Library: A Tutorial and Reference

進階類:
The C++ Programming Language, Special Edition
The Design and Evolution of C++
Inside C++ Object Model
C++ Templates: The Complete Guide
STL 源碼剖析
Generic Programming and the STL
Modern C++ Design: Generic Programming and Design Patterns Applied

應用技巧類:
Effective C++, 2nd Editon
More Effective C++
Exceptional C++
More Exceptional C++
Effective STL
Ruminations on C++)

三:第三階段
API/SDK------------- 《windows程序設計》(Jeff Prosise)
這書主要是開發Windows軟體要深入研讀的,畢竟是WindowsAPI。如果是主攻C++,那麼這本書你可以大概略讀一遍,不用過多的深入追究,QT才是C++主要深入思慮的關鍵。

四:第四階段
MFC----《VC++技術內幕》、《深入淺出MFC》及視頻教程孫鑫 VC++6.0
如果是C++,QT是要重點學習的對象。

五:第五階段
COM/DCOM/ATL/COM+---------《COM技術內幕》

未知階段:
《數據結構》,《演算法導論》這些基本是編程的核心了,編程的很大情況都依賴於演算法的實現,這個兩門基本要深入研究,這是決定編程能力的核心標准。

如果不弄底層的話,《操作系統原理》可以簡單地了解。

『叄』 COM/COM+/DCOM詳細的解釋,都是什麼功能

解釋COM、COM+和DCOM的定義和區別? COM是組件對象模型,是實現3/N層應用的基礎,它的目的就是組件化,應用程序分層.DCOM是分布式的COM,也就說可以遠程的創建,最初它利用遠程自動化來實現,用注冊VBR的方法來配置客戶端,來適應DCOM伺服器. COM+現在的概念不很清楚,因為它是一個擴展集,MS現在的MTS取代了遠程自動化這種原始的功能很弱的方法後,他們似乎已經都是一個集合體. 何謂Mts? MTS(Microsoft Transaction Server)是微軟為其Windows NT操作系統推出的一個中間件產品,由於它具有強大的分布事務支持、安全管理、資源管理和多線程並發控制等特性,使其成為在Windows平台上開發大型資料庫應用系統的首選產品。由於MTS屏蔽了底層實現的復雜性,極大地簡化了這類應用的開發,程序員可以將精力集中在業務邏輯上,因而有效地提高了軟體的開發效率. 組件對象模型(COM Componet Object Model),是微軟公司為了計算機工業的軟體生產更加符合人類的行為方式開發的一種新的軟體開發技術。在COM構架下,人們可以開發出各種各樣的功能專一的組件,然後將它們按照需要組合起來,構成復雜的應用系統。由此帶來的好處是多方面的:可以將系統中的組件用新的替換掉,以便隨時進行系統的升級和定製;可以在多個應用系統中重復利用同一個組件;可以方便的將應用系統擴展到網路環境下;COM與語言,平台無關的特性使所有的程序員均可充分發揮自己的才智與專長編寫組件模塊。 COM是開發軟體組件的一種方法。組件實際上是一些小的二進制可執行程序,它們可以給應用程序,操作系統以及其他組件提供服務。開發自定義的COM組件就如同開發動態的,面向對象的API(應用程序調用系統功能的介面)。多個COM對象可以連接起來形成應用程序或組件系統。並且組件可以在運行時刻,在不被重新鏈接或編譯應用程序的情況下被卸下或替換掉。Microsoft的許多技術,如ActiveX(根據微軟權威的軟體開發指南MSDN(Microsoft Developer Network)的定義,ActiveX插件以前也叫做OLE控制項或OCX控制項,它是一些軟體組件或對象,可以將其插入到WEB網頁或其它應用程序中), DirectX(DirectX並不是一個單純的圖形API,它是由微軟公司開發的用途廣泛的API,它包含有Direct Graphics(Direct 3D+Direct Draw)、Direct Input、Direct Play、Direct Sound、Direct Show、Direct Setup、Direct Media Objects等多個組件,它提供了一整套的多媒體介面方案。只是其在3D圖形方面的優秀表現,讓它的其它方面顯得暗淡無光。DirectX開發之初是為了彌補Windows 3.1系統對圖形、聲音處理能力的不足,而今已發展成為對整個多媒體系統的各個方面都有決定性影響的介面)以及OLE(OLE是指與對象鏈接和嵌入有關的技術,包括容器、伺服器、就地編輯、拖放和彩單合並等。在應用程序之間共享的一大塊數據稱為一個OLE對象,能夠包含OLE對象的應用程序稱為OLE容器,而允許自己的數據被包含到其他應用程序中的程序稱為OLE伺服器)等都是基於COM而建立起來的。並且Microsoft的開發人員也大量使用COM組件來定製他們的應用程序及操作系統。 COM所含的概念並不止是在Microsoft Windows操作系統下才有效。COM並不是一個大的API(用標準的定義來講,API就是Windows的32位應用程序編程介面,是一系列很復雜的函數,消息和結構,它使編程人員可以用不同類型的編程語言編制出的運行在Windows95 和Windows NT操作系統上的應用程序。),它實際上象結構化編程及面向對象編程方法那樣,也是一種編程方法。在任何一種操作系統中,開發人員均可以遵循「COM方法」。 一個應用程序通常是由單個的二進制文件組成的。當編譯器生成應用程序之後,在對下一個版本重新編譯並發行新生成的版本之前,應用程序一般不會發生任何變化。操作系統,硬體及客戶需求的改變都必須等到整個應用程序被重新生成。 目前這種狀況已經發生變化。開發人員開始將單個的應用程序分隔成單獨多個獨立的部分,也既組件。這種做法的好處是可以隨著技術的不斷發展而用新的組件取代以有的組件。此時的應用程序可以隨新組件不斷取代舊的組件而漸趨完善。而且利用已有的組件,用戶還可以快速的建立全新的應用。 傳統的做法是將應用程序分割成文件,模塊或類,然後將它們編譯並鏈接成一個單模應用程序。(靜態的鏈接,文件擴展名為.obj,在進程內實現的)它與組件建立應用程序的過程(稱為組件構架)有很大的不同。一個組件同一個微型應用程序類似,即都是已經編譯鏈接好並可以使用的二進制代碼,應用程序就是由多個這樣的組件打包而得到的。單模應用程序只有一個二進制代碼模塊。自定義組件可以在運行時刻同其他的組件連接起來以構成某個應用程序。在需要對應用程序進行修改或改進時,只需要將構成此應用程序的組件中的某個用新的版本替換掉即可(動態的鏈接,文件擴展名為.dll,是在進程外實現的)。 COM即組件對象模型,是關於如何建立組件以及如何通過組件建立應用程序的一個規范,說明了如何可動態交替更新組件。 COM是一種說明如何建立可動態互變組件的規范,此規范提供了為保證能夠互操作,客戶和組件應遵循的一些二進制和網路標准。通過這種標准將可以在任意兩個組件之間進行通信而不用考慮其所處的操作環境是否相同、使用的開發語言是否一致以及是否運行於同一台計算機。 COM的優點? 首先:用戶一般希望能夠定製所用的應用程序,而組件技術從本質上講就是可被定製的,因而用戶可以用更能滿足他們需要的某個組件來替換原來的那個。其次,由於組件是相對應用程序獨立的部件,我們可以在不同的程序中使用同一個組件而不會產生任何問題,軟體的可重用性將大大的得到增強。第三,隨著網路帶寬及其重要性的提高,分布式網路應用程序毫無疑問的成為軟體市場上越來越重要的買點。組件價構可以使得開發這類應用程序的過程得以簡化。 DCOM 是微軟與其他業界廠商合作提出的一種分布 組件 對象模型,它是COM在分布計算方面的自然延續,為分布在網路不同節點的兩個COM 組件 提供了互操作的基礎結構。 DCOM 增強COM的分布處理性能,支持多種通信協議,加強 組件 通信的安全保障,把基於認證Internet安全機制同基於Windows NT的C2級安全機制集成在一起。但從系統內部的實現機制而言, DCOM 所採用的技術仍符合圖1所示的COM模式。 DCOM 自動建立連接、傳輸信息並返回來自遠程 組件 的答復。 DCOM 在 組件 中的作用有如PC機間通信的PCI和ISA匯流排,負責各種 組件 之間的信息傳遞,如果沒有 DCOM ,則達不到分布計算環境的要求。微軟通過納入事務處理服務、更容易的編程以及對Unix和其它平台的支持擴充了 DCOM 。 建立 DCOM 時和使用COM建立對象的方式是相同的,只需再加入一個機器名稱的參數。如果COM通過Windows API的CoGetClassObject建立對象,只需再輸入機器名稱的參數即可在遠程指定的計算機中建立對象,並且取得指定介面的信息。它構造於RPC的技術之上,並且使用TCP/IP作為網路通信協議。 什麼是COM+ ? COM+並不是COM的簡單升級,COM+的底層結構仍然以COM為基礎,它幾乎包容了COM的所有內容,COM+綜合了COM、DCOM和MTS這些技術要素,它把COM組件軟體提升到應用層而不再是底層的軟體結構,它通過操作系統的各種支持,使組件對象模型建立在應用層上,把所有組件的底層細節留給操作系統,因此,COM+與操作系統的結合更加緊密。 COM+不再局限於COM的組件技術,它更加註重於分布式網路應用的設計和實現。COM+繼承了COM幾乎全部的優勢,同時又避免了COM實現方面的一些不足,把COM、DCOM和MTS的編程模型結合起來,繼承了它們的絕大多數特性,在原有的特性上增加了新的功能。 COM+的新的優點? 以下列出COM+的幾個主要特性: COM+不僅繼承了COM所有的優點,而且還增加了一些服務,比如隊列服務、負載平衡、內存資料庫、事件服務等。 隊列服務對於分布式應用非常有意義,特別是在現在網路速度很慢的情況下,這種機制可以保證應用系統能夠可靠地運行。在應用系統包含大量節點但伺服器又繁忙的情況下,客戶應用程序可以把它們的請求放到隊列中,當伺服器負載比較輕的時候再處理這些請求; 又如COM+提供了負載平衡服務,它可以實現動態負載平衡,而且COM+應用程序的負載平衡特性並不需要編寫代碼來支持,客戶程序和組件程序都可以按通常的方式實現。獲得負載平衡特性並不是用程序設計的方式來實現的,而是通過配置實現分布式應用程序的負載平衡,如上所講的隊列服務,其實也反映了一種負載平衡。 (1) 真正的非同步通訊。COM+底層提供了隊列組件服務,這使客戶和組件有可能在不同的時間點上協同工作,COM+應用無須增加代碼就可以獲得這樣的特性。 (2) 事件服務。新的事件機制使事件源和事件接收方實現事件功能更加靈活,利用系統服務簡化了事件模型,避免了COM可連接對象機制的瑣碎細節。 (3) 可伸縮性。COM+的可伸縮性來源於多個方面,動態負載平衡以及內存資料庫、對象池等系統服務都為COM+的可伸縮性提供了技術基礎,COM+的可伸縮性原理上與多層結構的可伸縮特性一致。 (4) 可管理和可配置性。管理和配置是應用系統開發完成後的行為,在軟體維護成本不斷增加的今天,COM+應用將有助於軟體廠商和用戶減少這方面的投入。 (5) 易於開發。COM+應用開發的復雜性和難易程度將決定COM+的成功與否,雖然COM+開發模型比以前的COM組件開發更為簡化,但真正提高開發效率仍需要藉助於一些優秀的開發工具。 COM+標志著Microsoft的組件技術達到了一個新的高度,它不再局限於一台機器上的桌面系統,它把目標指向了更為廣闊的企業內部網,甚至Internet國際互連網路。COM+與多層結構模型以及Windows操作系統為企業應用或Web應用提供了一套完整的解決方案。

閱讀全文

與comdcom編程指南相關的資料

熱點內容
區域網如何用ftp伺服器配置 瀏覽:70
程序員慣性思考模式 瀏覽:439
如何在個稅app上查身份證號 瀏覽:6
電視家app安裝在電視上怎麼安 瀏覽:889
怎麼將pdf格式轉化為圖片格式 瀏覽:637
伺服器拔掉raid卡怎麼裝系統 瀏覽:232
區域對稱加密演算法 瀏覽:245
數字轉漢字php 瀏覽:733
安卓源碼硬體驅動 瀏覽:208
痰證pdf 瀏覽:814
電腦怎麼把word文檔轉pdf 瀏覽:867
程序員那麼可愛有孩子了嗎 瀏覽:480
安卓文字折疊怎麼使用 瀏覽:885
創造一個app如何掙錢 瀏覽:801
php55vc11 瀏覽:642
抖音如何關閉蘋果app充值 瀏覽:332
python多個文件調用 瀏覽:792
java演算法和數據結構 瀏覽:465
糖豆視頻的文件夾 瀏覽:654
php的頭部文件一般在哪個文件里 瀏覽:560