ご存知のとおり、ASP テクノロジは、インターネット/イントラネット プラットフォームに基づく Web プログラムの主要なテクノロジです。ASP アプリケーションでは、通常、vbscript と javascript という 2 つのスクリプト言語が使用されます。しかし、スクリプト言語は非コンパイル言語であり、それによって開発される Web プログラムはセキュリティ、実行効率、スケーラビリティの点で固有の問題を抱えているため、Web システムを開発する場合は通常、高級言語を使用して ASP を記述します。この言語は、ASP 実行本体を呼び出してアクセスを実行するための接続コードとして機能します。この点に関して、ASP テクノロジが Microsoft によって導入されて以来、一般的には VB または VC を使用しますが、Delphi プログラマはどのようにしてそれを実現できるのでしょうか?
この点に関して、筆者は最近 inrpisre の情報を通じて Delphi 環境での ASP 技術の Web プログラミングを実現しました。以下に紹介します。
1. Delphi 環境で新しい acdiveX DLL プロジェクト PRoject1 を作成し、delphi の Active Server Object を通じて ASP オブジェクトを作成し、その coClassName に作成されたオブジェクト MyAspObject の名前を入力します。
2. タイプ ライブラリを使用して、スクリプト言語によって呼び出される、新しく作成された MyAspObject オブジェクトのメソッド MyAspRequest を作成します。
3. 作成した ASP オブジェクトは TASPObject から継承しているため、メソッドの作成でその ASP オブジェクトを直接使用できます。作成した Asp オブジェクトのコードを次のように入力します。
TMyAspObject.MyAspRequest を生成します。
始める
repsonse.write('<p>あなたの名前は:');
repsonse.write(request.form.item['名前']);
repsonse.write('</p>');//作成する Web ページからユーザー名を読み取ります//
repsonse.write('<p>あなたの仕事は:');
repsonse.write(request.form.item['work']);
repsonse.write('</p>');//作成する Web ページからユーザーの作業を読み取ります//
repsonse.write('<p>使用する開発ツール:');
if(request.form.item['delphi'].count>0)
repsonse.write('delphi');
if(request.form.item['bcb'].count>0)
repsonse.write('c++ Builder');//ユーザーが使用する開発ツールを決定する//
repsonse.write('</p>');
repsonse.write('<p>あなたの身元:');
repsonse.write(request.form.item['Identity']);
repsonse.write('</p>');//ユーザーの ID を読み取ります//
終わり;
4. プログラムをコンパイルし、PMyAspObject.dll ファイルとして Delphi に登録します。
5. 接続用の ASP スクリプト言語ファイル MyAsp.asp を作成します。
<%@言語=jscript %>
<HTML>
<本体>
<title>これは delphi で作成された ASP オブジェクトです</title>
<center><h3>入力内容は以下のとおりです</h3></center>
<%
var myasp;
myasp=server.createobject(PMyAspObject.MyAspObject);
//接続オブジェクトを生成//
myasp.MyAspRequest();//独自に定義した ASP オブジェクトを呼び出します//
%>
</body>
</HTML>
6. 表示用の Web ページ Myhtm.htm を作成します。
<form action='localHost/shd/myasp.asp' method='post">
<h1 align='center">選択してください</h1>
<P>名前: <input type='text' size=33 name="name"></p>
<P>作品: <input type='text' size=33 name="work"></p>
<P>開発ツール: <input type='checkbox' name='delphi' value="on">delphi
<input type='checkbox'name='bcb'value="on">C++ ビルダー</p>
<p>あなたの身元:</p>
<p><select name="identity" size="1">
<オプション>学生</オプション>
<オプション>技術者</オプション>
</select></p>
<p><input type="submit" name="mysubmit" value="Submit">
</form>
7. 次に、Myhtm.htm と myasp.asp を個人 Web サーバーの shd ディレクトリに配置して、参照してテストします。
Web ページのレンダリング
ASP レンダリング
上記のプログラムは pwin98 ME と delphi5.0 Enterprise で実装されています。