ここでは、次の環境でのBASP21 Proの使用方法を説明します。
- ASP(Active Server Pages)
- IE(Internet Explorer)
- WSH(Windows Scripting Host)
- Visual Basic Application (VBA)
- Visual Basic 5.0/6.0
- Visual C++ 5.0/6.0
- コマンドラインツール(BHELPER.EXE)
- Netscape Navigator
ここでは次のトピックを説明します。
■ インスタンス作成BASP21 Pro オブジェクトは、サーバ スクリプトでServer.CreateObjectメソッドを使って インスタンスを作成します。 VBScript: Set bobj = Server.CreateObject("basp21pro") JScript: var bobj = Server.CreateObject("basp21pro"); BASP21 Proインスタンスは、ASP Session オブジェクトおよび Application オブジェクトには 格納しないでください。注意:More than two BASP21 Pro instance can not be created by using one script. 'wrong usage: Set bobj1 = Server.CreateObject("basp21pro") Set bobj2 = Server.CreateObject("basp21pro") Set bobj1 = Nothing Set bobj2 = Nothing 'right usage: Set bobj1 = Server.CreateObject("basp21pro") Set bobj1 = Nothing Set bobj2 = Server.CreateObject("basp21pro") Set bobj2 = Nothing ■ Call methodsCall BASP21 Pro methods as follows. bobj.method name parameter refer to BASP21 Pro referencefor BASP21 Pro methods parameters may vary depending on methods. ■ Configure propertyproperty is used for configure/refer to the condition of Objects. BASP21 Pro's property can be configured as follows. bobj.property name = parameter refer to BASP21 Pro Reference.for BASP21 Pro properties. ■ configure environmentsBASP21 Pro can configure the default value of property and other environments. so you can easily configure various environments(e.g. environment for testing,operation,ユーザ別) and that minimize the modification of scripts.
Env propertycan configure the environment for BASP21 Pro objects It makes script simple by configuring paramaters that vary on environments by using Env property. Use Env property as follows.
bobj.Env = "env name" bobj.Env = "*" env name is one of the section names in BASP21P.INI file Specifying "*" can make it current security context(user acount) name. If using IIS anonymous connection,the env name is "IUSR_machine name"example of BASP21P.ini file to configure the default value of SendMail method.
bobj.Env = "iis5" mailto = "hoge@basp21.com" subj = "document" body = "Hello!" & vbCrLf & "this is a document." files = bobj.Home & "\good.doc" bobj.SendMail mailto,subj,body,files basp21p.ini file [global] allow=env inifileversion=500 license=GT20000301 [iis5] allow=sendmail server=smtp-server mailfrom=your@basp21.com home=c:\test\iis5 [IUSR_MACHINE] allow=sendmail server=smtp-server mailfrom=your@basp21.com smtp-server is selected as SMTP server,and your@basp21.com is used for mailfrom address by SendMail method described above.you can also dynamicaly specify SMTP server name and mailfrom address dynamically.
bobj.Server = "smtp-server2" bobj.MailFrom = "her@basp21.com" bobj.SendMail mailto,subj,body,filesYou can specify home directory name using home parameter The directory name specified by home paramater can be reffered using period by the parameter that specify other directory name. It is created at execution of Env configuration, if no directory is specifed by home parameter,mailbox parameter,mailqueue paramater,monitor parameterパラメータで
[user1] deny=execute,showdialog,fireevent home=c:\app1\user1 mailbox=.\mailbox mailqueue=.\mailqueue monitor=.\monBHELPER.EXEをv オプションで起動するとEnv名に 対応するパラメータ一覧をダイアログ表示できます。 コマンドプロンプトで以下のように -e パラメータで確認したいEnv名を指定します。
bhelper -e iis5 -v ■ エラー処理BASP21 Proオブジェクトは、メソッドエラー時の原因調査や適切なエラー処理を 強力にサポートする機能を持っています。- ログ取得(logfileパラメータ)
- スクリプト中断Trapプロパティ
- エラー判定IsErrorプロパティ
- 詳細なエラーメッセージ取得LastMsgプロパティ
- 実行結果Resultプロパティ
Trapプロパティは、エラー発生時にスクリプトを中断することができます。
bobj.Trap = 1 bobj.SendMail mailto,subj,body,filesIsErrorプロパティは、メソッドがエラーかどうか判定します。
bobj.SendMail mailto,subj,body,files If bobj.IsError Then msg = bobj.LastMsg End If ■ メソッド実行制限BASP21 Proオブジェクトは、Envプロパティで指定する環境ごとにメソッドやプロパティの 実行を制限することができます。 BASP21P.INIファイルの allowパラメータで許可する 名前を列挙し、 denyパラメータで許可しない名前を 指定します。 basp21p.iniファイル [global] allow=env inifileversion=500 license=GT20000301 [iis5] deny=rcvmail,readmail server=smtp-server mailfrom=your@basp21.com [upload] allow=formsaveas,form 注意:ひとつのEnv内でallowパラメータとdenyパラメータを同時に指定できません。 ■ IIS認証ASPファイル上のBASP21 Proオブジェクトは、IIS認証のセキュリティコンテキストで動作します。 匿名接続の場合は、"IUSR_マシン名"アカウントとなります。 ただし、 Processメソッドで外部プロセスとして 実行するメソッドは、"IWAM_マシン名" または "SYSTEM" アカウントで実行されます。 どのセキュリティコンテキストで実行されたのかは、 ログレコード のメッセージ種別 begin (メソッド開始)に記録されます。BASP21 Proオブジェクトがファイルやディレクトリのアクセスに失敗するときは、 "IUSR_マシン名"アカウントがターゲットに適切なアクセス権を持っているかどうか確認してください。
■ メソッドのプロセス分離ASPアプリケーションの中には、クライアントにすぐ応答を返す必要がない処理が 含まれることがあります。 他のコンピュータと通信を伴うメール送信などは、メソッドを別プロセスで実行すると クライアント応答性および他のASPアプリケーションに好ましい影響を与え、Webサーバの信頼性を 向上させることができます。BASP21 Proには、メソッドを別プロセスで実行する以下の機能があります。
BHELPER.EXEは、BASP21 Proオブジェクトをラップした Win32アプリケーションです。 Windows NT/2000 のATコマンドとBHELPER.EXE を組合わせて使うと、 BASP21 Proメソッドをスケジュールして実行することができます。 次の例は、毎週金曜日の18:00に FlushMailメソッド をATコマンドで実行します。 at 18:00 /every: f /interactive bhelper -e env1 flushmail Processメソッドは、指定したメソッドを別プロセスで実行します。 次の例は、送信メールキューが20通になったらFlushMailメソッドを別プロセスで実行します。 If 20 ■ オブジェクトモニター通常、ASPサーバサイドスクリプトでは、コンポーネントはセキュリティで保護された デスクトップで実行されます。コンポーネントは、ダイアログやメッセージ送信で ユーザと対話することはできません。Monitorメソッドを使用すると、 現在の他のBASP21 Proオブジェクトの実行状況に関する情報を取得できます。 同じmonitorパラメータを持つ環境で実行されている オブジェクト単位に情報が取得されます。 monitorパラメータが指定されている場合、monitorパラメータのディレクトリ上に、 メソッドの進捗状況をスレッド単位にモニターファイルに書出します。 サーバサイドで実行中の処理時間が長いメソッドをモニターしたい場合に使うと便利です。
以下のASPページは、BASP21 Proオブジェクトの状況をスレッド単位に5秒ごとに表示します。
Monitor Page 0 Then For Each data in out line = Split(data,vbCrLf) For Each item in line a = a & "" & Server.HTMLEncode(item) & "" Next a = "" & a & "" Next Else a = "" End If Response.Write "TID | Status | Start-Time" & _ " | Log | Progress |
---|