次の方法で共有


CreateObject

CreateObject メソッドは、サーバー コンポーネントのインスタンスを作成します。コンポーネントに OnStartPage メソッドと OnEndPage メソッドが実装されている場合は、この時点で OnStartPage メソッドが呼び出されます。サーバー コンポーネントの詳細については、「ASP で利用可能なコンポーネント」を参照してください。

構文

Server.CreateObject( progID )

 

パラメータ
  • progID
    作成するオブジェクトの種類を指定します。progID の形式は [Vendor.]Component[.Version] です。
解説

特に指定しない限り、Server.CreateObject メソッドで作成されたオブジェクトはページ スコープを持ちます。つまり、これらのオブジェクトは、サーバーが現在の ASP ページの処理を完了した時点で自動的に破棄されます。

セッション スコープまたはアプリケーション スコープを持つオブジェクトを作成するには、Global.asa で <OBJECT> タグを使用して SCOPE 属性を SESSION または APPLICATION に設定するか、あるいはオブジェクトをセッション変数かアプリケーション変数に格納します。

たとえば、次のスクリプトでセッション変数に格納したオブジェクトは、Session オブジェクトが破棄されたとき、つまり、セッションがタイムアウトになるか、または Abandon メソッドが呼び出されたときに、破棄されます。

  <% Set Session("ad") = Server.CreateObject("MSWC.AdRotator")%>
 

また、変数を Nothing に設定するか、または下の例のように新しい値を設定することで、オブジェクトを破棄することもできます。1 番目の例ではオブジェクト ad を解放しています。2 番目の例では ad を文字列に置換しています。

  <% Session("ad") = Nothing %>
<% Session("ad") = "some other value" %>
 

組み込みオブジェクトと同じ名前のオブジェクト インスタンスは作成できません。たとえば、次の例はエラーを返します。

  <% Set Response = Server.CreateObject("Response") %>
 
  <% Set MyAd = Server.CreateObject("MSWC.AdRotator") %>
 

この例は、MSWC.AdRotator コンポーネントとして MyAd というサーバー コンポーネントを作成しています。このコンポーネントは 、Web ページ上の広告の交換を自動的に行うために使用します。

サーバー コンポーネントの詳細については、Platform SDK を参照してください。

対象

Server オブジェクト