GetLastError
GetLastError メソッドは、発生したエラー状況を示す ASPError オブジェクト を返します。このメソッドは、.asp ファイルがクライアントにコンテンツを送る前に限り利用できます。
構文
Server.GetLastError( )
解説
ASP アプリケーション用の 500;100 カスタム エラーが定義されている場合は、.asp ファイルを参照します。この場合、アプリケーション内で .asp ファイルを実行している最中にエラーが発生したときは、サーバーはこの ASP ページを Server.Transfer メソッドを通して自動的に転送します。実行中の ASP アプリケーションから得られる、状態に関するすべての情報は、エラーを処理する .asp ファイルで利用できます。さらに、ASPError オブジェクトも利用できるため、エラー処理の設定に使用する .asp ファイルを通してエラーのプロパティを公開することもできます。
既定の Web サイトは、ファイル \iishelp\common\500-100.asp を使用するように構成されています。このファイルは、ASP エラーの処理、または独自のエラー処理の作成のいずれかに使用できます。500;100 カスタム エラーの処理について .asp ファイルを変更する場合は、インターネット インフォメーション サービス スナップインを使用できます。詳細については、「ASP エラー処理を有効にする」を参照してください。
注 500;100 カスタム エラーは、IIS で、.asp ファイルまたはアプリケーションの Global.asa ファイルの処理中にエラーが発生した場合に生成されます。
例
次の 3 つの例は、500;100 カスタム エラーを生成するエラーを示しています。エラーには、次の 3 種類があります。
- 処理前のエラー
- スクリプト コンパイル時のエラー
- 実行時エラー
最初の例は、処理前のエラーを示しています。これは IIS がファイルをインクルードしようとしたときに発生するエラーです。このエラーは、インクルード ステートメントのファイル パラメータが不足しているために発生します。2 つ目の例は、スクリプト コンパイル時のエラーを示しています。スクリプトは、For...Next ループのキーワード "next" が不足しているため、スクリプト エンジンによってコンパイルされません。3 つ目の例は、実行時エラーを示しています。これは、スクリプトで 0 による除算を行おうとしたために発生します。
例 1
<!--#include fil=inc.h -->
<%
response.write "hello"
%>
例 2
<%
dim I
for i=1 to 1
nxt
%>
例 3
<%
dim i,j
dim sum
sum=0
j=0
for i=1 to 10
sum=sum+1
next
sum=sum/j
%>