使用javascript中的OLE Automation 在前面的教程中我們已經有提到javascript中的OLE Automation。在本節的教程中,我們將一起來討論一下javascript是怎樣利用Automation的強大功能來擴充服務端指令碼的能力的。 實際上Automation並不是新的事物。它已經在好幾年前就流行了,但是被ActiveX指令碼語言的支援是一個新的應用。如果你已經有了Visual Basic 或者Visual C++的編程背景,本節教程將介紹怎樣利用你的經驗來建立有用的指令碼以控制外部的應用程式。 在你的指令碼中控制外部的應用是非常強大的,比如從你的指令碼中開啟一個Word文檔或者一個Excel試算表。HTML編輯器,比如HomeSite 4.0和HotMetal Pro 6為你提供了豐富的工具使得你可以利用它們到你的首頁中去。它們都是封裝到ActiveX控制項中的。本教程的內容主要有: 什麼是Automation 什麼是綁定 怎樣建立Automation對象的新執行個體 怎樣檢索一個Automation對象存在的執行個體 怎樣處理應用程式的執行個體 怎樣提高指令碼程式的效能 怎樣處理集對象 從下一篇開始,我們對以上的內容逐個介紹。 使用javascript中的OLE Automation 什麼是Automation OLE(對象串連和嵌入)Automation允許應用程式完成通訊、交換資料以及控制其它應用程式等等。它還允許一個客戶應用程式通過使用暴露對象的介面來建立和控制一個對象。一個Automation對象是可以通過Automation介面暴露給其它應用程式或者編程工具的一個對象。 Automation提供了一個文檔案的、標準的方法來建立和訪問應用程式。通常,Automation跟Visual Basic是緊密聯絡的。它有為C/C++開發人員提供了建立可程式化的應用程式的強大工具,並且讓Visual Basic設計人員訪問和操作這些應用程式。這些C/C++程式員提供專業化的使用者介面的解決方案並且給Visual Basic程式員提供了從應用程式組件中彙集定製解決方案的一種可靠的方法。 不僅Visual Basic 可以利用Automation,實際上,可程式化的對象也可以任何的宏語言或者執行Automation的編程工具來進行訪問。使用者可以根據當前的知識選擇一個編程工具,而不是為每一個應用程式學習新的語言。即使指令碼語言,比如VBScript和Jscript頁支援Automation 。 控制一個Automation應用程式的關鍵在於對應用程式的物件模型要有一個較好的理解。每一個應用程式的物件模型是不同的。微軟現在聲稱在Office 程式組中每一個應用程式的每一個函數都可以通過應用程式的物件模型被程式員訪問。這個Office程式組通過它的物件模型暴露了成千上萬的對象、方法以及屬性給程式員。這個訊息對程式設計人員來說無疑是一個好訊息。 但是,學習特殊應用程式的物件模型通常是很困難的,因為缺少描述各種軟體對象的相關資料文檔。微軟的Office應用程式,比如在網上為程式員提供了許多資料文檔,但是還有許多其它的應用程式不提供必須的文檔。 在Microsoft Visaul Basic中的物件瀏覽器將對象、方法、屬性以及外部Automation對象的常量展現在對話方塊中。這個工具同樣適用於指令碼設計中,因為應用程式的全域常量在指令碼環境中不是有效。如果你利用Automation來編寫指令碼,你可以適用物件瀏覽器來取出必需的常量的值,這樣你就可以在指令碼中來顯性指定它們了。 |