<object> 要素

スクリプトで参照できるオブジェクトを定義します。

<object id="objID" [classid="clsid:GUID" | progid="progID"] events="true|false"/>

  • objID
    スクリプト内でオブジェクトを参照するときの名前です。オブジェクト ID の値は、必ず文字で始めて、その後には文字、数字、およびアンダースコア (_) を指定することができます。オブジェクト ID は、スクリプト コンポーネントのスコープ全体で一意になるようにします。オブジェクト ID に CObj という名前を指定すると、次のようにオブジェクトをスクリプトで参照できます。

    x = CObj.Prop1
    
  • GUID
    省略可能です。登録されたオブジェクトのクラス ID (GUID) への参照を指定します。"clsid:"の後に、中かっこなしでクラス ID を指定します。classid 属性または progid 属性のどちらかを指定する必要があります。クラス ID の例を示します。次に例を示します。

    classid="clsid:2154c700-9253-11d1-a3ac-0aa0044eb5f"
    
  • progID
    省略可能です。オブジェクトのプログラム ID を指定します。クラス ID の代わりに指定できます。classid 属性または progid 属性のどちらかを指定する必要があります。

  • events
    省略可能です。オブジェクトからイベントをフックできる属性です。既定では、events は "false" に設定されています。"true" に設定されている場合、オブジェクトが発生するイベントに接続することができます。ハンドルされる各イベントに対してイベント ハンドラを追加する必要があります。

解説

<object> 要素は、CreateObject() などの関数を使うことなく、スクリプト コンポーネントに記述するオブジェクトをグローバルに公開する方法を提供します。<object> 要素を使用すると、オブジェクトがグローバル スコープで使用できるようになり、オブジェクトのメンバに関するステートメントを、スクリプト作成ツールで補完できるようになります。

次のコードは、ADODB.Connection オブジェクトに対するオブジェクト参照を作成する <object> 要素の例です。

メモ   <script> 要素内のスクリプトを隠蔽するには、CDATA セクションが必要です。詳細については、「スクリプト コンポーネント ファイルと XML 適合性」を参照してください。

<registration progid="ADOScriptlet"/>
<object id="cnn" progid="ADODB.Connection"/>
<public>
   <property name="cnnState"/>
   <method name="openconnection"/>
</public>

<script language="VBScript">
<![CDATA[
Dim cnnState
Function openconnection()
   cnn.ConnectionString = 
      "driver={SQL Server};server=myserver;uid=sa;database=pubs"
   cnn.Open
   If cnn.State = 1 Then
      cnnState = "open"
      cnn.Close
   Else
      cnnState = "closed"
   End If
End Function
]]>
</script>

参照

スクリプト コンポーネント ファイルの内容