JavaScript的GetObject 函數

  GetObject 函數app

  從文件中返回對 Automation 對象 的一個引用。樣式爲:GetObject([pathname] [, class])函數

  pathname可選項。 完整的文件路徑和名稱,文件中包含了要檢索的對象。 若是忽略了 pathname ,那麼須要 class 。工具

  class可選項。 對象的類。對象

  類參數採用的語法是 appname.objectype ,包括瞭如下部分:文檔

  appname必選項。 提供對象的應用程序名稱。字符串

  objectype必選項。 要建立的對象的類的類型。get

  使用 GetObject 函數能夠從文件中訪問一個 Automation 對象。 能夠將由 GetObject 返回的對象賦值給對象變量。 例如:io

  var CADObject;class

  CADObject = GetObject("C:\\CAD\\SCHEMA.CAD");變量

  在執行這段代碼時,將啓動與指定的 pathname 相關的應用程序,所指定文件中的對象將被激活。 若是 pathname 是長度爲零的字符串 ("") ,那麼 GetObject 將返回指定類型的一個新實例。 若是忽略了 pathname 參數,那麼 GetObject 將返回指定類型的當前活動實例。 若是不存在指定類型的對象,那麼將出錯。

  一些應用程序容許激活文件的一部分。要實現此功能,能夠在文件名的尾部添加一個感嘆號 (!) ,而後在感嘆號後跟上一個字符串來指定要激活的文件部分。關於如何建立這個字符串的詳細信息,請參閱建立該對象的應用程序的文檔。

  例如,在一個繪畫應用程序中,可能在文件中存儲了繪畫的不少層次。 能夠使用下面的代碼激活名爲 SCHEMA.CAD 的圖畫中的一層。

  var LayerObject = GetObject("C:\\CAD\\SCHEMA.CAD!Layer3");http://www.82676666.com

  若是沒有指定對象的類, Automation 將根據所提供的文件名來決定要啓動的應用程序和要激活的對象。 可是,一些文件可能支持不止一種對象的類。 例如,一個圖畫可能支持三種不一樣的對象類型:應用程序對象、繪畫對象,以及工具欄對象,全部這些都是同一個文件中的部分。 要指定文件中但願激活的對象,能夠使用可選的 class 參數。 例如:

  var MyObject;

  MyObject = GetObject("C:\\DRAWINGS\\SAMPLE.DRW", "FIGMENT.DRAWING");

  在前面的例子中,FIGMENT 是繪畫應用程序的名稱,而 DRAWING 是它支持的一種對象類型。 對象被激活後,能夠使用定義的對象變量來引用它。 在前面的例子中,能夠經過對象變量 MyObject 來訪問新對象的屬性和方法。 例如:

  MyObject.Line(9, 90);

  MyObject.InsertText(9, 100, "Hello, world.");

  MyObject.SaveAs("C:\\DRAWINGS\\SAMPLE.DRW");

  注意 若是當前已經有了對象的實例,或者想要由已經加載了的文件建立對象,那麼能夠使用 GetObject 函數。 若是沒有當前的實例,並且也不想由已經加載的文件來啓動對象,那麼能夠使用 ActiveXObject 對象。

  若是對象自身已經註冊爲單實例對象了,那麼不管執行多少次 ActiveXObject 也只會建立對象的一個實例。 對於單實例對象, GetObject 在用長度爲零的字符串 ("") 語法調用時老是返回相同的實例,而若是忽略了 pathname 參數就會出錯。

相關文章
相關標籤/搜索