COM 组件设计及应用.doc

  1. 1、本文档共189页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
起源及複合檔案 前言   西元一九九五年某個夜黑風高的晚上,我的一位老師跟我說:“小楊呀,以後寫程式就和搭積木一樣啦。你趕快學習一些OLE的技術吧......”,當時我心裡就尋思 :“開什麼玩笑?搭積木方式寫程式?再過100年吧......”,但作為一名聽話的好學生,我開始在書店裡“踅摸”(注1)有關OLE的書籍(注2)。功夫不負有心人,終於買到了我的第一本COM書《OLE2 高級程式設計技術》,這本800多頁的大布頭花費了我1/5的月工資呀......於是開始日夜耕讀..... 功夫不負有心人,我堅持讀完了全部著作,感想是:這本書,在說什麼呐? 功夫不負有心人,我又讀完了一遍大布頭,感想是:咳~~~,沒懂! 功夫不負有心人,我再,我再,我再讀 ... 感想是:哦~~~,讀懂了一點點啦,哈哈哈。 ...... ...... 功夫不負有心人,我終於,我終於懂了。 800頁的書對現在的我來說,其實也就10幾頁有用。到這時候才體會出什麼叫“書越讀越薄”的道理了。到後來,能買到的書也多了,上網也更方便更便宜了......   為了讓VCKBASE上的朋友,不再經歷我曾經的痛苦、不再重蹈我“無頭蒼蠅”般探索的艱辛、為了VCKBASE的蓬勃發展、為了中國軟體事業的騰飛(糟糕,吹的太也高了)......我打算節約一些在 BBS 上賺分的時間,寫個系列論文,就叫“COM組件設計與應用”吧。今天是第一部分——起源。 二、檔的存儲   傳說350年前,牛頓被蘋果砸到了頭,於是發現了萬有引力。但到了二十一世紀的現在,任何一個技術的發明和發展,已經不再依靠聖人靈光的一閃。技術的進步轉而是被社會的需求、商業的利益、競爭的壓力、行業的滲透等推動的。微軟在Windows平臺上的組件技術也不例外,它的發明,有其必然因素。什麼是這個因素那?答案是——檔的存儲。   打開記事本程式,輸入了一篇文章後,保存。——這樣的檔叫“非結構化檔”;   打開試算表程式,輸入一個班的學生姓名和考試成績,保存。——這樣的檔叫“標準結構化檔”;   在我們寫的程式中,需要把特定的資料按照一定的結構和順序寫到檔中保存。——這樣的檔叫“自訂結構化檔”;(比如 *.bmp 文件)   以上三種類型的檔,大家都見的多了。那麼檔存儲就依靠上述的方式能滿足所有的應用需求嗎?恩~~~,至少從電腦發明後的50多年來,一直是夠用的了。嘿嘿,下面看看商業利益的推動作用,對檔 的存儲形式產生了什麼變化吧。30歲以上的朋友,我估計以前都使用過以下幾個著名的軟體:WordStar(獨霸DOS下的英文編輯軟體),WPS(裘伯君寫的中文編輯軟體,據說當年的市場佔有率高達90%,各種電腦培訓班的必修課程),LOTUS-123(蓮花公司出品的試算表軟體)...... 微軟在成功地推出 Windows 3.1 後,開始垂涎桌面辦公自動化軟體領域。微軟的 OFFICE 開發部門,各小組分別獨立地開發了 WORD 和 EXCEL 等軟體,並採用“自訂結構”方式,對檔進行存儲。在激烈的市場競爭下,為了打敗競爭對手,微軟自然地產生了一個念頭------如果我能在 WORD 程式中嵌入 EXCEL,那麼用戶在購買了我 WORD 軟體的情況下,不就沒有必要再買 LOTUS-123 了嗎?!“惡毒”(中國微軟的同志們看到了這個詞,不要激動,我是加了引號的呀)的計畫產生後,他們開始了實施工作,這就是 COM 的前身 OLE 的起源(注3)。但立刻就遇到了一個嚴重的技術問題:需要把 WORD 產生的 DOC 檔和 EXCEL 產生的 XLS 檔保存在一起。   方案 優點 缺點 建立一個子目錄,把 DOC、XLS 存儲在這同一個子目錄中。 資料隔離性好,WORD 不用瞭解 EXCEL 的存儲結構;容易擴展。 結構太鬆散,容易造成資料的損壞或丟失。 不易攜帶。 修改檔存儲結構,在DOC結構基礎上擴展出包容 XLS 的結構。 結構緊密,容易攜帶和統一管理。 WORD 的開發人員需要通曉 EXCEL 的存儲格式;缺少擴展性,總不能新加一個類型就擴展一下結構吧?! 以上兩個方案,都有嚴重的缺陷,怎麼解決那?如果能有一個新方案,能夠合併前兩個方案的優點,消滅缺點,該多好呀......微軟是作磁片作業系統起家的,於是很自然地他們提出了一個非常完美的設計方案,那就是把磁片檔的管理方式移植到檔中了------複合檔案,俗稱“文件中的檔案系統”。連微軟當年都沒有想到,就這麼一個簡單的想法,居然最後就演變出了 COM 元件程式設計的方法。可以說,複合檔案是 COM 的基石。下圖是磁片檔組織方式與複合檔案組織方式的類比圖: 圖一、左側表示一個磁片下的檔組織方式,右側表示一個複合檔案內部的資料組織方式。 三、複合檔案的特點 複合檔案的

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档