インストール ダイアログ ボックスに入力された値の組み合わせを検証するには、ダイアログ ボックスの検証スクリプトを使用します。 このスクリプトを使用するには、プリインストール コンポーネントに検証用のスクリプト ファイルを追加する必要があります。 ダイアログ ボックス内で、ダイアログ ボックス全体または特定の入力フィールドのユーザ データを検証できます。
ダイアログ ボックスの検証スクリプトは、インストール ダイアログ ボックスの[次へ]ボタンをクリックすると実行されます。 その後、インストール ダイアログ ボックスに入力されたすべてのパラメータ値がシェル環境に渡されます。 検証が成功した場合、スクリプトによってゼロ(0)が返されます。 エラーの場合は、スクリプトによって、プロトタイプ ファイルの Resource セクションに、一致するエラー テキストの番号が返されます。 参照されているエラー テキスト番号は、1 ~ 255 の範囲内である必要があります。 対応するエラー テキストがない場合、エラー メッセージにテキスト番号が表示されます。
入力された値 $LOCALE および $DATE の検証例は、以下のとおりです。 英語のロケールが入力されている場合は、データ フィールドに日付が入らない(またはドイツ語での日付表示になる)ことがあります。
#!/bin/sh
# If one of the parameters $LOCALE or $DATE is not set, # error message 1 is printed [ ! "$LOCALE" -o ! "$DATE" ] && exit 1
# If an English locale has been entered, the date field # must not contain any dot [ "$LOCALE" = "en_US" -a `echo "$DATE" | grep "." 2>/dev/null 1>&2; echo $?` -eq 0 ] && exit 2
# exit without error message exit 0
テキスト フィールド(#textfield)、インストール ディレクトリ(#instdir)、およびパスワード フィールド(#passwordfield)の検証スクリプトを指定できます。 これらの検証スクリプトは、ユーザが入力フィールドから移動したときに実行されます。 検証スクリプトが実行される前に[次へ]ボタンをクリックすると、再度これらのスクリプトが呼び出されます。 入力したパラメータ値は、スクリプトにシェル パラメータとして渡されます。 検証が成功した場合、スクリプトによってゼロ(0)が返されます。 エラーの場合は、スクリプトによって、プロトタイプ ファイルの Resource セクションに、一致するエラー テキストの番号が返されます。 参照されているエラー テキスト番号は、1 ~ 255 の範囲内である必要があります。 対応するエラー テキストがない場合、エラー メッセージにテキスト番号が表示されます。
以下に、ディレクトリ名が完全に正しいかどうかを確認(パラメータ $INSTDIR)する例を示します。
#!/bin/sh
# If the parameters $INSTDIR is not set, error message 1 is printed [ ! "$INSTDIR" ] && exit 1
# If the parameters $INSTDIR does not start with a slash, # error message 2 is printed [ `expr "$INSTDIR" : '¥(.¥)'` != "/" ] && exit 2
# exit without error message exit 0
ログ情報は、以下のようにダイアログ ボックスの検証スクリプトにあるパラメータ PIF_LOG_FILE を使用して取得できます。
if [ $VERBOSE -eq 1 -a -w "$PIF_LOG_FILE" ] then echo "LOG INFORMATION TEXT" >> "$PIF_LOG_FILE" fi
Copyright © 2013 CA.
All rights reserved.
|
|