14.20.21 USER_PROGRAM_INSTALLATION_CONDITIONS(外部プログラムの指定)
USER_PROGRAM_INSTALLATION_CONDITIONSタグでは、インストール前後およびインストールエラー時に管理対象のコンピュータで起動させる外部プログラムを指定します。このタグは、dcmcollコマンド、dcmpackコマンド、およびdcmstswコマンドで使用します。
指定できるパラメタ、およびコマンドの引数との対応を次の表に示します。
パラメタ |
内容 |
コマンドの引数 |
---|---|---|
インストール前起動外部プログラム |
/b インストール前起動外部プログラム |
|
インストール後起動外部プログラム |
/a インストール後起動外部プログラム |
|
インストールエラー時起動外部プログラム |
/e インストールエラー時起動外部プログラム |
|
起動外部プログラム |
/ep 起動外部プログラム |
|
外部プログラム処理結果の通知方式 |
/rbR、/rbM、/raR、/raM、/reR、/reM |
|
処理結果エラー時の取り扱い |
/ybC、/ybS、/yaC、/yaS |
|
監視方式 |
/wbU、/wbT、/wbG、/waU、/waT、/waG、/weU、/weY |
|
|
|
|
監視コード |
/wc 監視コード |
- 注※1
-
UNIXのコンピュータへ配布するパッケージの場合、SCHEDULEタグのinstallation_date_and_timeパラメタと同時に指定すると、このパラメタは無視されます。
- 注※2
-
UNIXのコンピュータへ配布するパッケージの場合、パラメタを指定しても無視されます。
起動する外部プログラムには、GUIを持たないプログラムを指定してください。GUIを持つプログラムを起動しても、GUIは表示されません。
また、外部プログラムには16bitのアプリケーションを指定しないでください。Windowsのコンピュータに対して、外部プログラムに16bitアプリケーションを指定したバックグラウンドインストールモードのパッケージをリモートインストールすると、コンピュータがハングアップします。
(1) 形式
USER_PROGRAM_INSTALLATION_CONDITIONS{ { external_program_executed_before_installation= インストール前起動外部プログラム exit=外部プログラム処理結果の通知方式 action=処理結果エラー時の取り扱い wait=監視方式(U、T、またはG) } { external_program_executed_after_installation= インストール後起動外部プログラム exit=外部プログラム処理結果の通知方式 action=処理結果エラー時の取り扱い wait=監視方式(U、T、またはG) } { external_program_error_handler= インストールエラー時起動外部プログラム exit=外部プログラム処理結果の通知方式 wait=監視方式(UまたはY) timeout=監視時間 } { external_program_handler= 起動外部プログラム timeout=最大実行期間 wait_code=監視コード } }
(2) 説明
-
external_program_executed_before_installation=インストール前起動外部プログラム
インストール(またはファイル収集)の直前に起動する外部プログラムのパスをフルパスで指定します。スペースを含むパス名を指定する場合は、値を「"」で囲んで指定してください。
外部プログラムのパスはインストールの場合は半角で256文字まで、ファイル収集の場合は半角で128文字まで指定できます。これらの文字数を超えて指定した場合は、リターンコード「2」のエラーとなります。
-
external_program_executed_after_installation=インストール後起動外部プログラム
インストール(またはファイル収集)の直後に起動する外部プログラムのパスをフルパスで指定します。スペースを含むパス名を指定する場合は、値を「"」で囲んで指定してください。
外部プログラムのパスはインストールの場合は半角で256文字まで、ファイル収集の場合は半角で128文字まで指定できます。これらの文字数を超えて指定した場合は、リターンコード「2」のエラーとなります。
-
external_program_error_handler=インストールエラー時起動外部プログラム
インストール(またはファイル収集)エラー時に起動する外部プログラムのパスをフルパスで指定します。スペースを含むパス名を指定する場合は、値を「"」で囲んで指定してください。
外部プログラムのパスはインストールの場合は半角で256文字まで、ファイル収集の場合は半角で128文字まで指定できます。これらの文字数を超えて指定した場合は、リターンコード「2」のエラーとなります。
-
external_program_handler=起動外部プログラム
指定した実行状況になった時に起動する外部プログラムのパスをフルパスで指定します。スペースを含むパス名を指定する場合は、値を「"」で囲んで指定してください。
外部プログラムのパスは半角で256文字まで指定できます。256文字を超えて指定した場合は、リターンコード「4」のエラーとなります。
-
exit=外部プログラム処理結果の通知方式
外部プログラムの処理結果の通知方式を「R」(リターンコード)または「M」(メッセージ)で指定します。コマンドの引数で指定する場合は、「/rb」(インストール前起動プログラムの場合)、「/ra」(インストール後起動プログラムの場合)、または「/re」(インストールエラー時起動プログラムの場合)の直後に「R」または「M」を指定します。
デフォルトは、INSTALLATION_METHODタグのinstallation_mode(またはコマンドの引数/m)で指定されたインストールモードによって異なります。GUIインストールモードの場合は「M」、バックグラウンドインストールモードの場合は「R」になります。
-
R
外部プログラムのリターンコードで通知します。
-
M
外部プログラムが規定のメッセージを出すことで通知します。
-
-
action=処理結果エラー時の取り扱い
外部プログラムの処理結果がエラーの場合に、インストールを続行するかどうかを「C」(続行する)または「S」(中止する)で指定します。コマンドの引数で指定する場合は、「/yb」(インストール前起動プログラムの場合)または「/ya」(インストール後起動プログラムの場合)の直後に「C」または「S」を指定します。デフォルトは「S」です。
-
C
エラーであっても正常と見なし、インストールを続行します。
-
S
インストールをエラーとし、インストール処理を中止します。
-
-
wait=監視方式
外部プログラムが処理結果を通知するまでのインストール処理の取り扱いを「U」、「T」、「G」、または「Y」で指定します。コマンドの引数で指定する場合は、「/wb」(インストール前起動プログラムの場合)、「/wa」(インストール後起動プログラムの場合)、または「/we」(インストールエラー時起動プログラムの場合)の直後に「U」、「T」、「G」、または「Y」を指定します。デフォルトは「U」です。
「T」、「G」、または「Y」を指定した場合、「監視時間」で外部プログラムの応答を監視する時間の上限値を指定してください。
-
U
処理結果が通知されるまでインストール処理を中断します。
-
T
中断時間が監視時間を経過した場合、インストールをエラーと見なし、インストール処理を中止します。
-
G
中断時間が監視時間を経過した場合、正常と見なし、インストール処理を続行します。
-
Y
中断時間が監視時間を経過した場合、インストールエラー時起動プログラムの処理を続行します。
-
-
timeout=監視時間(dcmstswコマンドの場合は最大実行期間)
- dcmpackコマンドの場合
-
外部プログラムの応答を監視する時間の上限値を指定します。監視時間は秒単位で、0〜21,600(6時間)の範囲で指定してください。応答を監視しない場合は「0」を指定します。デフォルトは「1」です。
監視時間の指定は、「インストール直前」、「インストール直後」、「インストールエラー」で起動するすべての外部プログラムに共通の値となります。なお、「監視方式」で「U」を指定した場合は指定が無効になります。
- dcmstswコマンドの場合
-
ジョブの実行状況を監視する最大実行期間を指定します。実行期間は秒単位で、1〜10,000,000の範囲で指定してください。デフォルトは86,400(1日)です。
-
wait_code=監視コード
外部プログラムを起動する契機となる、ジョブ実行状態または保守コードを指定します。複数指定する場合は間を「,」(コンマ)で区切ってください。複数指定するとOR条件で設定されます。
- ジョブ実行状態を指定する場合
-
次の値の中から1つ以上を指定してください。デフォルトは「ERROR」です。
・NORMAL
正常終了した。
・TRANS_WAIT
配布管理システムで転送待ち状態。
・TRANSMITTED
管理対象のコンピュータへ転送中または実行中。
・REGISTERED
IDジョブをID管理元中継へ転送中。
・CLT_NOTREADY
起動に失敗した。
・CLT_SERVICE_OFF※
JP1/IT Desktop Management 2が停止しているため、起動に失敗した。
・CLT_POWER_OFF※
PCの電源がオフのため、起動が失敗した。
・CLT_NETWORK_ERR※
ネットワーク障害のため、起動が失敗した。
・SUSPENDED
中継で中断指示があった。
・INST_WAIT
インストール/収集待ち。
・HOLD_EXEC
ジョブが保留された。
・ID_NOPKG
IDジョブで中継保管パッケージが削除された。
・CONNECT_ERROR
通信エラーが発生した。
・ERROR
ジョブ実行エラーが発生した。
・DELETING
中継システム、管理用中継サーバ、および管理対象のコンピュータでジョブを削除中。
- 注※
-
JP1/IT Desktop Management 2 - Managerのセットアップで、[リモートインストールマネージャを使用した配布のセットアップ]画面の[サーバカスタマイズオプション]パネルの「起動失敗要因を細分化する」チェックボックスがオンの場合に指定できます。ただし、「CLT_NOTREADY」と同時に指定しても無視されます。
なお、チェックボックスがオフの場合は、これらの実行状態を指定しても、外部プログラムを起動できません。
- 保守コードを指定する場合
-
保守コードを12けたで指定してください。ワイルドカードを使用できます。
(例)
保守コードの左から9番目が8、10番目が2:"????????82??"
(3) 注意事項
-
「インストール前起動外部プログラム」、「インストール後起動外部プログラム」、「インストールエラー時起動外部プログラム」、および「起動外部プログラム」はそれぞれ1つまで指定できます。
-
インストール前後に起動する外部プログラムを指定する場合、システム条件(SYSTEM_CONDITIONS)またはパッケージ条件(SOFTWARE_CONDITIONS)を指定したときは、exit、action、waitの指定は無効になります。
-
dcmcollコマンドで使用する場合は、external_program_handler、exit、action、wait、およびtimeoutの指定は無効になります。
-
dcmstswコマンドで使用する場合は、external_program_handler、timeout、wait_code以外の指定は無効になります。
(a) UNIXのコンピュータで外部プログラムを起動する場合の注意事項
dcmpackコマンドで、UNIXのコンピュータへ配布するパッケージに外部プログラムの起動を設定する場合、次のことに注意してください。
-
Windows向けパッケージと異なり、external_program_error_handler、exit、action、およびwaitパラメタは指定できません。
-
external_program_executed_before_installationおよびexternal_program_executed_after_installationパラメタは、SCHEDULEタグのinstallation_date_and_timeパラメタを指定したかどうかで外部プログラムのパスの指定方法が異なります。
-
「<」「>」「|」「&」「$」などのシェルプログラムで特別な意味を持つ文字は使わないでください。
指定方法の違いを次の表に示します。
installation_date_and_timeの指定
起動する外部プログラムのパス指定方法
external_program_executed_before_installation
external_program_executed_after_installation
あり
指定できません。
-
半角40文字以内で指定してください。
-
スペースを含んだパスは指定できません。
-
後処理プログラムに引数が存在する場合は、パスと引数の全体を「"」(ダブルクォーテーション)で囲んでください。
-
引数がスペースを含む場合は、スペースを含む引数を「'」(シングルクォーテーション)で囲んでください。
なし
-
external_program_executed_before_installationだけ指定する場合、半角60文字以内で指定してください。
-
external_program_executed_after_installationだけ指定する場合、半角64文字以内で指定してください。
-
external_program_executed_before_installationとexternal_program_executed_after_installationを両方指定する場合、合わせて半角60文字以内で指定してください。
-
文字列(引数)の数は最大18個指定できます。
-
複数の連続したスペースは1個の区切り文字として扱われます。
-
「'」(シングルクォーテーション)は引数として扱われません。
-
シェル変数は文字列として扱われるため、無効になります。
-
応答待ちになる処理を指定しないでください。
-
また、dcmcollコマンドでUNIXのコンピュータに対して外部プログラムの起動を設定する場合、次のことに注意してください。
-
Windowsのコンピュータの場合と異なり、external_program_error_handlerパラメタは指定できません。
-
起動する外部プログラムのパスは、半角64文字以内で指定してください。65文字以上を指定した場合は、先頭から64文字分が有効となります。
-
起動する外部プログラムのパスにスペースを含めることはできません。
-
起動する外部プログラムに引数は指定できません。
なお、パスの指定方法が間違っていた場合、パッケージングとジョブの実行はできますが、配布先のUNIXのコンピュータで外部プログラムは起動しません。このとき、ジョブはエラーにならず、正常終了しますのでご注意ください。