統合システム運用管理 JP1
JP1 Version 8 より.NETアプリケーションを起動する際に発生する問題
JP1にてサブミットジョブ実行時、デフォルトの設定ではジョブの実行ファイル名がショートファイル名として扱われる。
この動作により、.NETアプリケーションは「実行ファイル名(8.3形式).exe」に対応する「実行ファイル名.exe.config」(アプリケーション構成ファイル)を探すことができなくなり、構成ファイルの設定値の読み取りに失敗する。
この問題に対処するためには、JP1がジョブの実行ファイルをロングファイル名として扱うように構成する必要がある。
JP1の構成方法
- 以下のサービスを停止する。
* JP1/AJS2サービス
* JP1/AJS2 Monitorサービス
net stop jp1_ajs2 net stop jp1_ajs2_monitor
- エディタで以下のファイルを作成する。
jp1_set_IsExecFindExecutable.conf
[JP1_DEFAULT\\JP1NBQAGENT\Job] "IsExecFindExecutable"=dword:1
- jbssetcnfコマンドを実行する。
jbssetcnf jp1_set_IsExecFindExecutable.conf
- 以下のサービスを開始する。
* JP1/AJS2サービス
* JP1/AJS2 Monitorサービス
net start jp1_ajs2 net start jp1_ajs2_monitor
- 上記をすべて自動化するには、以下のような bat を作成し実行する。
jp1_set_IsExecFindExecutable.bat
@echo off net stop jp1_ajs2 net stop jp1_ajs2_monitor set conf_file=jp1_set_IsExecFindExecutable.conf echo [JP1_DEFAULT\\JP1NBQAGENT\Job]> %conf_file% echo "IsExecFindExecutable"=dword:1>> %conf_file% jbssetcnf %conf_file% net start jp1_ajs2 net start jp1_ajs2_monitor del %conf_file% pause
参考文献:
ジョブをロングファイル名で実行するための設定