ここでは、Active Server Pages (ASP) に付属の ActiveX サーバー コンポーネントを使って実現できる作業の一部について、簡単に説明します。これらのコンポーネントの詳細な説明とそのプロパティおよびメソッドの一覧については、「コンポーネント リファレンス」を参照してください。
従来オートメーション サーバーと呼ばれていた ActiveX サーバー コンポーネントは、Web サーバー上で Web 対応アプリケーションの一部として実行するように開発されたものです。コンポーネントにはデータベース アクセスなどの頻繁に使われる動的な機能がパッケージ化されているため、開発者はそれらの機能を作成または再作成する必要がありません。
通常、ActiveX サーバー コンポーネントは .asp ファイルから起動されます。しかし、ISAPI アプリケーションやほかのサーバー コンポーネント、あるいは OLE 互換のほかの言語などからも同様に起動することができます。
Active Server Pages (ASP) には次の 5 種類の ActiveX サーバー コンポーネントが組み込まれています。
ActiveX サーバー コンポーネントのインスタンスは 1 つのステートメントで作成できます。作成したコンポーネントのインスタンスでは、そのコンポーネントに関連するメソッドを使ったり、プロパティの設定や取得ができます。
次のスクリプトは、Server.CreateObject メソッドを使って Browser Capabilities コンポーネントのインスタンスを作成し、変数 bc
を割り当てます。
<% Set bc = Server.CreateObject("MSWC.BrowserType") %>
また、<OBJECT> タグを使ってコンポーネント インスタンスを作成することもできます。次の例は Ad Rotator コンポーネントのインスタンスを作成します。
<OBJECT RUNAT=Server ID=MyAd PROGID="MSWC.AdRotator"></OBJECT>
注意 通常は、Global.asa ファイルの中で定義されている拡張版の <OBJECT> タグを使い、セッションスコープ、またはアプリケーションスコープを持つコンポーネント インスタンスを作成します。詳細については、「コンポーネントの有効範囲の設定」を参照してください。
Database Access コンポーネントを使うと、作成する Web アプリケーションの内部からデータベースにアクセスできます。そして、テーブルの内容をすべて表示したり、ユーザーにクエリーを作成させたり、あるいは Web ページからほかのデータベース操作を実行したりできます。Database Access コンポーネントの例とその詳細については、「コンポーネント リファレンス」を参照してください。
Ad Rotator コンポーネントを使うと、一連の画像の表示や入れ替えをしたり、表示画像から別の URL にリンクしたりできます。広告のリストをテキスト ファイルの中に保持しておけば、データ ファイル内のステートメントに応じてそれらの広告を Ad Rotator コンポーネントが表示します。たとえば、次のスクリプトはユーザーがページを要求したときに広告を表示します。
<% Set Ad = Server.CreateObject("MSWC.Adrotator") %>
<%= Ad.GetAdvertisement("/ads/adrot.txt") %>
このようなスクリプトを実行すると、次のような HTML が生成されます。
<A HREF="http://www.msn.com/scripts/adredir.asp?url=http://www.company.com/">
<IMG SRC="http://msnnt3web/ads/homepage/chlogo_lg.gif"
ALT="Check out the new Technology Center"
WIDTH=440 HEIGHT=60 BORDER=1></A>
Ad Rotator コンポーネントの詳細については、「コンポーネント リファレンス」を参照してください。
Web 上には異なる機能を備えたさまざまな種類のブラウザがあるため、各種ブラウザの機能に応じてブラウザに送るコンテンツを変えたい場合があります。Browser Capabilities コンポーネントを使えばこれを実現できます。詳細については、「コンポーネント リファレンス」を参照してください。
Content Linking コンポーネントを使うと、アプリケーションでの .asp ファイル間の論理的な移動が簡単に行えるようになります。多数の .asp ファイルに URL の参照情報を保持する代わりに、編集が容易な 1 個のテキスト ファイルに一連の .asp ファイルの構成情報を保持しておき、それを指定することができます。次の例は、テキスト ファイルからリンク順序を読み取り、1 ページだけの目次ページを作成します。
<%
Set NextLink=Server.CreateObject("MSWC.NextLink")
count=NextLink.GetListCount("/Vroot/Nextlink.txt")
%>
<UL>
<% For i = 1 to count %>
<li><a href="<%=NextLink.GetNthUrl("/Vroot/Nextlink.txt",i) %>">
<%=NextLink.GetNthDescription("/Vroot/Nextlink.txt",i) %></a>
<% Next %>
Content Linking コンポーネントの詳細については、「コンポーネント リファレンス」を参照してください。