JP1/NETM/DM 運用ガイド1 (Windows(R)用)
![[目次]](FIGURE/CONTENT.GIF)
![[用語]](FIGURE/GLOSS.GIF)
![[索引]](FIGURE/INDEX.GIF)
![[前へ]](FIGURE/FRONT.GIF)
インストール直前,直後,およびインストールエラーのそれぞれの場合に,起動させたい外部プログラムのパス名を指定します。「インストール直前」,「インストール直後」,または「インストールエラー」の右側の[参照]ボタンをクリックして,表示されるダイアログから,選択したプログラムのフルパスを参考にして指定できます。ただし,[システム条件]パネルで「システム条件の取り込み」が設定されている場合,パス名は指定できません。
なお,JP1/NETM/DM Clientをリモートインストールする場合は,インストール直前だけ外部プログラムを起動できます。インストール直後,またはインストールエラー時に外部プログラムの起動を設定しても無視されます。
指定された外部プログラムは,処理が正常に終了したかどうかをサーバに通知する必要があります。終了通知の方法については,「(2) 外部プログラムの終了通知」を参照してください。また,外部プログラムから取得した終了通知の扱いは,[詳細]ボタンをクリックして表示される[外部プログラム用詳細設定]ダイアログボックスで指定します。詳細は,「(3) 外部プログラムの終了通知の扱い」を参照してください。
外部プログラムを設定するときの注意事項を次に示します。
- 外部プログラムとして指定できるのは,拡張子が*.exe,*.bat,*.cmdのファイルだけです。
- 外部プログラムのパスは,半角256文字以内で指定してください。
- 外部プログラムのパスにスペースを含める場合は「"」で囲んで指定してください。
- 外部プログラムのパスには,文字列「%HITACHI_REG\xxx%」を含めることはできません(xxxは,任意の文字列)。この文字列は,各日立プログラムプロダクトの固有のパスを表すもので,JP1/NETM/DMの予約語です。
- バックグラウンドインストールモード(Windows NT)でリモートインストールする場合は,GUIを持たないプログラムを指定してください。GUIを持つプログラムを指定しても,GUIは表示されません。
ただし,Windows 8,Windows Server 2012,Windows 7,Windows Server 2008またはWindows VistaでGUIを持つプログラムを実行した場合は,実行したプログラムに対して,GUIの表示を要求するダイアログボックスが表示されたままになることがあります。GUIが表示されたままになることを避けるためには,次の設定をしてください。
- [外部プログラム]パネルの「外部プログラム監視時間」を1以上に設定してください。
- [外部プログラム]パネルの[詳細]ボタンをクリックすると表示される[外部プログラム用詳細設定]ダイアログボックスで「外部プログラムの時間監視」にチェックしてください。
- [外部プログラム]パネルの[詳細]ボタンをクリックすると表示される[外部プログラム用詳細設定]ダイアログボックスで「処理結果エラー時の取り扱い」設定を「エラーとして処理を中断する」
- 外部プログラムには16bitのアプリケーションを指定しないでください。Windows NTのクライアントに対して,外部プログラムに16bitアプリケーションを指定したバックグラウンドインストールモードのパッケージをリモートインストールすると,クライアントがハングアップします。
UNIXクライアントへ配布するパッケージに外部プログラムの起動を設定する場合は,「(5) UNIXクライアントで外部プログラムを起動する場合の注意事項」を参照してください。
- 外部プログラム監視時間
- 「外部プログラム起動」で指定した外部プログラムの応答を監視する時間の,上限値と単位を指定します。外部プログラムが無限ループに陥ったときなどに備えて,外部プログラムの終了を待つ時間を,0〜21,600秒(360分,6時間)で指定してください。応答を監視しない場合は「0」を指定します。デフォルトは「1(秒)」です。なお,この指定は,[外部プログラム用詳細設定]ダイアログボックスで「外部プログラムの時間監視」チェックボックスをオンにしている場合に有効になります。[外部プログラム用詳細設定]ダイアログボックスについては,「(3) 外部プログラムの終了通知の扱い」を参照してください。
- この指定値は,「インストール直前」,「インストール直後」,「インストールエラー」で起動するすべての外部プログラムに対して有効です。外部プログラムごとに異なる監視時間を設定することはできません。また,UNIXのパッケージャからパッケージング(資源登録)されたパッケージの外部プログラム監視時間は,参照はできますが,変更はできません。
ユーザプログラムをリモートインストールする場合,インストールの前後,およびインストールエラー時に,外部プログラムを起動させることができます。
外部プログラムは,終了コードまたはWindows Messageで,処理が正常に終了したかどうかをサーバに通知する必要があります。終了コードで通知する場合,およびWindows Messageで通知する場合の値の設定方法を次に示します。
なお,インストール直後に外部プログラムを起動した場合,外部プログラムの実行が終了した時点で配布終了として通知されます。
- 終了コードを指定した場合
- スクリプトに通知されるプログラムの終了コードについては,正常終了の場合は0を,正常に終了しなかった場合は1〜255のどれかの値を設定してください。スクリプトから起動されたプログラムが終了すると,shell関数は制御を戻します。
- Windows Messageを指定した場合
- Windows Messageによって処理を通知する場合はWindows APIのRegisterWindowMessage()関数で文字列「DMP_UAP_QUIT」を定義し,返されたメッセージ識別子を使ってすべてのトップレベルウィンドウに自プログラムの処理結果を通知してください。Windows APIのPostMessage()関数の第3引数が処理結果コードになります。
- 文字列「DMP_UAP_QUIT」を定義する方法を次に示します。この例では,変数DMRtnが処理コードとなります。
- (例)
UINT MsgId;
WORD DMRtn;
MsgId = RegisterWindowMessage("DMP_UAP_QUIT");
DMRtn = 0; /* 終了コードの設定:正常 */
(VOID)PostMessage(HWND_BROADCAST,
MsgId,
DMRtn,
NULL);
外部プログラムの終了通知の扱いについては,[詳細]ボタンをクリックすると表示される[外部プログラム用詳細設定]ダイアログボックスで設定します。「インストール直前」,「インストール直後」の[詳細]ボタンをクリックした場合と,「インストールエラー」の[詳細]ボタンをクリックした場合とでは,表示される内容が異なります。「インストールエラー」の[詳細]ボタンから表示した場合は,「監視時間経過時の取り扱い」および「処理結果エラー時の取り扱い」は表示されません。それぞれの場合に表示される[外部プログラム用詳細設定]ダイアログボックスを次に示します。
図2-23 「インストール直前」,「インストール直後」の[詳細]ボタンから表示した[外部プログラム用詳細設定]ダイアログボックス
![[図データ]](FIGURE/RIM0240.GIF)
図2-24 「インストールエラー」の[詳細]ボタンから表示した[外部プログラム用詳細設定]ダイアログボックス
![[図データ]](FIGURE/RIM0250.GIF)
- 外部プログラムの時間監視
- [JP1/NETM/DM パッケージング]ダイアログボックスの[外部プログラム]パネルで指定した「外部プログラム監視時間」の設定を有効にするかどうかを指定します。デフォルトはオフです。
- チェックボックスをオンにすると,「外部プログラム監視時間」で指定した時間だけ外部プログラムを監視します。
- チェックボックスをオフにすると,無限に外部プログラムを監視します。「外部プログラム監視時間」の上限値以上の監視が必要なときだけオフにしてください。起動した外部プログラムが,データベースの更新など時間の掛かる処理をする場合に有効です。
- 注意
- 外部プログラムの監視をしないと,外部プログラムが無限ループに陥った時などにジョブのハングアップが発生し,配布結果が得られないことがあります。ジョブのハングアップ防止のため,外部プログラムの時間監視を有効にすることをお勧めします。
- 監視時間経過時の取り扱い
- 外部プログラム監視時間を経過した場合,リモートインストールジョブを中断し,エラーとするかどうかを指定します。デフォルトでは「エラーにする」がオンになっています。通常はデフォルトのまま運用してください。
- エラーにする
- 監視時間を経過した場合,リモートインストールジョブを「エラー」として配布管理システムまたは中継システムに通知します。また,外部プログラムも終了させます。
- エラーにしない
- 監視時間を経過した場合も,リモートインストールジョブを「成功」として配布管理システムまたは中継システムに通知します。外部プログラムを起動後,常駐させて使いたいなどの場合にだけ,こちらを選択してください。また,この場合は,「外部プログラム監視時間」を短く設定してください。
- 外部プログラム処理結果の取得方法
- 外部プログラムは,処理が正常に終了したかどうかをサーバに通知する必要があります。ここでは,外部プログラムの処理結果を取得する方法を指定します。設定を間違えるとクライアントがハングアップするおそれがあるため,正確に設定してください。デフォルトでは,「外部プログラムの終了コードで通知」がオンになっています。
- 外部プログラムのWindows Messageで通知
- クライアントから起動する外部プログラムから,さらに別のプログラムを起動したとき,そのプログラムの処理結果を取得できます。例えば,リモートインストールしたデータを「クライアントから起動した外部プログラム」で加工したあと,さらに,加工したデータを「Windows Messageでクライアントに結果を通知するプログラム」でデータベースに登録できます。
- なお,これはインストールモードが「GUIインストールモード」のときだけ指定できます。バックグラウンドインストールモード(Windows)で「外部プログラムのWindows Messageで通知」を選択した場合は,クライアントで自動的に「外部プログラムの終了コードで通知」に変更されます。
- 外部プログラムの終了コードで通知
- 一般的な終了コードを返却するプログラムに指定してください。
- 処理結果エラー時の取り扱い
- 取得した外部プログラムのリターン情報(終了コード,または処理結果コード)が0以外の値の場合,エラーにするかどうかを指定します。デフォルトでは,「エラーとして処理を中断する」がオンになっています。
- エラーとして処理を中断する
- 外部プログラムからのリターン情報が0以外の場合,エラーにします。EXEファイルなど,リターン情報を正確に取得できるプログラムに指定してください。取得されたリターン情報は,保守コード中のユーザステータスに設定されます。保守コードは,リモートインストールマネージャの[ジョブ実行状況]ウィンドウから表示される[詳細情報]ダイアログボックスで確認できます。
- エラーとせずに処理を続行する
- 外部プログラムからのリターン情報が0以外の場合でも,そのまま処理を続行します。BATファイルなど,リターン情報が正確に取得できないプログラムに指定してください。
リモートインストール時にクライアントで外部プログラムを起動させる場合,クライアントのOSによって外部プログラムの実行権限が異なります。外部プログラムはシステム権限またはログオンユーザの権限で動作します。クライアントのOSごとの外部プログラムの実行権限を次の表に示します。
クライアントのOS |
外部プログラムの実行権限 |
Windows 98,Windows Me |
ログオンユーザの権限 |
Windows Server 2003,Windows XP,
Windows 2000,Windows NT 4.0 |
システム権限またはログオンユーザの権限 |
Windows 8,Windows Server 2012,Windows 7,Windows Server 2008,Windows Vista |
システム権限 |
クライアントのOSがWindows Server 2003,Windows XP,Windows 2000,またはWindows NT 4.0の場合,外部プログラムの実行権限はパッケージのインストール方法,ログオンユーザのアクセス権,およびクライアントセットアップの設定内容によって異なります。パッケージのインストール方法別に,外部プログラムがシステム権限で動作する条件を次に示します。次の条件に該当しない場合は,ログオンユーザの権限で動作します。
なお,外部プログラムの実行権限によっては,ファイル・ディレクトリ・ネットワークドライブ・レジストリへのアクセス権がない場合があります。また,環境変数の設定も外部プログラムの実行権限に依存します。
- [ジョブ実行]アイコンの起動またはパッケージセットアップマネージャからインストールする場合
クライアントのログオンユーザのアクセス権がAdministrator権限ではなく,クライアントセットアップの[クライアント常駐・ポーリング]パネルおよび[権限]パネルでの設定内容の組み合わせが,次の表に示す1または2のどちらかを満たすとき,外部プログラムはシステム権限で動作します。
クライアントセットアップの設定項目 |
設定の組み合わせ |
1 |
2 |
[クライアント常駐・ポーリング]パネルの「クライアントを常駐する」チェックボックス |
オン |
オフ |
[権限]パネルの「一般ユーザ権限で使用する」チェックボックス |
オン |
オン |
[権限]パネルの「非常駐でジョブ実行またはパッケージセットアップマネージャを使用する」チェックボックス |
− |
オン |
- (凡例) −:対象外
- GUIインストールモードを設定したパッケージをインストールする場合
クライアントのログオンユーザのアクセス権がAdministrator権限でなく,クライアントセットアップの[権限]パネルの「一般ユーザ権限で使用する」チェックボックスがオンのとき,外部プログラムはシステム権限で動作します。
これらの条件に該当しない場合は,ログオンユーザの権限で動作します。
クライアントセットアップのセットアップ項目については,マニュアル「構築ガイド」の「6.2 クライアントをセットアップする」を参照してください。
UNIXクライアントへ配布するパッケージに外部プログラムの起動を設定する場合,次のことに注意してください。
- 「<」「>」「|」「&」「$」などのシェルプログラムで特別な意味を持つ文字は使わないでください。
- インストールエラー時の外部プログラム起動はできません。
- インストール直前および直後の外部プログラム起動は,[スケジュール]パネルのインストール日時指定の有無によってパスの指定方法が違います。パスの指定方法が間違っていた場合,パッケージングとジョブの実行はできますが,配布先のUNIXクライアントで外部プログラムは起動しません。このとき,ジョブはエラーにならないで,正常終了するので注意してください。
指定方法の違いを次の表に示します。
インストール日時の指定 |
起動する外部プログラムのパス指定方法 |
インストール直前に起動 |
インストール直後に起動 |
あり |
指定できません。 |
- 半角40文字以内で指定してください。
- スペースを含んだパスは指定できません。
- 後処理プログラムに引数が存在する場合は,パスと引数全体を「"」(ダブルクォーテーション)で囲んでください。
- 引数がスペースを含む場合は,スペースを含む引数を「'」(シングルクォーテーション)で囲んでください。
|
なし |
- インストール直前に起動する外部プログラムだけ指定する場合,半角60文字以内で指定してください。
- インストール直後に起動する外部プログラムだけ指定する場合,半角64文字以内で指定してください。
- インストール直前と直後に起動する外部プログラムを両方指定する場合,合わせて半角60文字以内で指定してください。
- 文字列(引数)の数は最大18個指定できます。
- 複数の連続したスペースは1個の区切り文字として扱われます。
- 「'」(シングルクォーテーション)は引数として扱われません。
- シェル変数は文字列として扱われるため,無効になります。
- 応答待ちになる処理を指定しないでください。
|
All Rights Reserved. Copyright (C) 2009, 2013, Hitachi, Ltd.
Copyright, patent, trademark, and other intellectual property rights related to the "TMEng.dll" file are owned exclusively by Trend Micro Incorporated.