使用javaScript中的OLE Automation
2. 什麼是綁定
在你適用一個物件模型的屬性、方法和事件之前,你必需先創建一個計劃性的引用給包含了你想適用的屬性、方法或事件的類別。你可以透過宣告一個局部物件變數以保留一個引用給這個物件來實現這個目的。然後,你要為局部變數指定一個物件的應用。
VB和VBScript使用CreateObject()函數,來實現在Jscript使用這個ActiveXObject()建構函數的時候為一個Automation物件允許並傳回一個參考。
實際上,綁定是指Visual Basic程式碼存取在其它的應用程式物件的方法。當你從一個應用程式使用Automation來處理另外一個應用程式中物件的時候,你編寫Visaul Basic程式碼的應用程式就是一個Automation控制器。這個你正在處理物件的應用程式是Automation伺服器。當一個Automation控制器建立一個指向由Automation伺服器提供物件的變量,Visual Basic 必要驗證物件是否存在以及使用物件的任何屬性和方法是正確指定的。這個驗證過程就所謂的」綁定」。有兩種Visual Basic程式開發人員使用的綁定類型要注意: late binding(遲綁定) 和 early binding(早期綁定)。
遲綁定
遲綁定是發生在運行時間並且比早期綁定要慢。在遲綁定Automation程式碼中,Visual Basic在每次執行包含那個物件的行程式碼時必需查詢物件以及它的方法和屬性。為了驗證這個物件以及它的方法和屬性是否正確指定,Visual Basic 必需利用作業系統和支援物件的應用來檢查。以下來看看一段Visual Basic 程式碼:
Dim wdApp As Object
Set wdApp = CreateObject("Word.application")
這個wdApp變數被定義為一般類型的物件。當這個變數被宣告了,Visual Basic 並不知道它是屬於什麼類型的對象,所以你必須為這個物件留出一定程度的記憶體。既然特定物件參考是被指定到普通變數的,所以應用程式沒有辦法知道物件的介面是由什麼組成的。只有在運行時間,應用程式才綁定到使用者介面上。因此,不管你是什麼時候引用新的對象,Visual Baisc必須檢查系統註冊以獲得對象的資訊。
早綁定
早綁定是一個解決慢Automation性能的好的解決方法。早綁定發生在編譯的時候而不是在運行的時候,所以如果你的程式碼是在編譯階段保存的,在程式碼運行之前已經綁定結束了。當使用早期綁定,Visual Basic 不需要連續驗證物件訊息,而是在應用程式執行的過程中使用物件。
另外,不是所有的Automation伺服器都支援早期綁定。這個Automation伺服器必須支援一個類型庫,這個類型庫包含了關於伺服器物件、方法和屬性的資訊。為了利用早期綁定,你必須為Automation伺服器的類型庫設定一個引用。 Visual Basic裝載類型庫到記憶體中,這使得它可以識別這些物件並且在程式碼編譯的時候綁定它們。以下的程式碼片段顯示如何為物件建立一個早期綁定介面:
Dim wdApp As Word.Application
Set wdApp = CreateObject("Word.Application")
以上就是Javascript實例教學(20) OLE Automation( 2)的內容,更多相關內容請關注PHP中文網(www.php.cn)!