Hitachi

JP1 Version 12 JP1/Integrated Management 2 - Manager コマンド・定義ファイル・APIリファレンス


アプリケーション実行定義ファイル

〈このページの構成〉

形式

@file type="定義ファイルタイプ", version="定義フォーマットバージョン";
#コメント行
@define-block type="application-execution-def";
id="アプリケーション実行定義識別子";
path="コマンドパス";
description="アプリケーション実行の説明文";
@define-block-end;

ファイル

!JP1_CC_APP0.conf(アプリケーション実行定義ファイル)

!JP1_CC_APP0.conf.model(アプリケーション実行定義ファイルのモデルファイル)

格納先ディレクトリ

Viewパス\conf\appexecute\ja\

説明

アプリケーション実行定義ファイルは,[イベントコンソール]画面から起動するアプリケーションなどの実行形式ファイルのIDとパスを定義するファイルです。

なお,JP1/IMには,アプリケーション実行定義ファイルの記述内容をチェックするためのコマンド「jcoappexecfcheck」が用意されています。このコマンドの詳細については,「jcoappexecfcheck(Windows限定)」(1. コマンド)を参照してください。

定義の反映時期

JP1/IM - Viewを再起動したあとに有効になります。

記述内容

@file type="application-execution-definition";

この定義ファイルがアプリケーション実行定義ファイルであることを宣言します。このステートメントは必須です。

このステートメントは,ファイルの先頭行に記述しなければなりません。

#コメント行

#で始まる行は,コメント扱いとなります。

アプリケーション実行定義ブロック

[イベントコンソール]画面から起動するアプリケーションなどの実行形式ファイルのパスを定義し,ほかの定義ファイルからリンクするためのID付けをします。

このブロックには次のステートメントを記述できます。

  • idステートメント

  • pathステートメント

  • descriptionステートメント

これ以外のステートメントが記述された場合は,エラー出力し,該当するステートメントだけを無視されます。

次にステートメントについて説明します。

id="アプリケーション実行定義識別子";

このブロックで指定するコマンドパスにIDを付けます。このステートメントは必須です。このステートメントは,ブロック内で1回だけ記述できます。

同一のidを持つブロックが解析対象のファイル内に複数個存在した場合,次の順に優先順位が決定され,最優先のブロックが有効になります。

1. ファイル名を昇順でソートしてあとの方のブロック

2. ファイル内の位置があとの方のブロック

それ以外のブロックは無効になります。

アプリケーション実行定義識別子は,32バイト以内の半角英数字で構成される文字列です。この文字列は定義内でユニークでなければなりません。ユニーク性を保持するために,次の命名規則に従ってください。

会社名_製品名[_機能名(または画面名)]

「"jco_"」で始まる文字列,および「"default_browser"」は,アプリケーション実行定義識別子として予約されているため,使用できません。

path="コマンドパス";

idステートメントで指定したアプリケーション実行定義識別子と関連づける実行形式ファイルのパスを定義します。このステートメントは必須です。このステートメントは,同一ブロック中に複数個指定できます。起動する実行形式ファイルは,フルパスで指定します。後述の置き換えキーワードを使用して,レジストリーなどからパスを組み立てることもできます。

このステートメントを複数個指定した場合は,記述順にパスが検索され,最初に見つかったパスが使用されます。

pathステートメントで指定できる実行形式ファイルは,.exeまたは.batファイルです。

コマンド実行時のカレントディレクトリは不定です。カレントディレクトリから相対パスを意識するコマンドなどは指定できません。.batファイルなどでcdコマンドを実行したあと,実行するようにしてください。

検索処理はJP1/IM - Viewの起動時にだけ実行されます。そのため,起動対象となるアプリケーションをJP1/IM - Viewの実行中にインストールした場合は,JP1/IM - Viewを再起動する必要があります。

64ビット版のWindowsでは,%WINDIR%\System32フォルダ以下に配置されているコマンドを実行すると,WOW64のリダイレクト機能によって,%WINDIR%\SysWow64フォルダ以下に配置されているコマンドにリダイレクトされます。リダイレクト先のコマンドがない場合,コマンドの実行に失敗することがあります。%WINDIR%\System32フォルダ以下に配置されているコマンドを実行コマンドに指定する場合は注意してください。

置換文字列

pathステートメントには,実行時に置き換え可能な置換文字列を指定できます。

(1)キーワード置換文字列

指定された定義内にキーワード置換文字列が存在する場合は,記述されたキーワードに従って文字列の置換が実行されます。形式を次に示します。

%置き換えキーワード%

置き換えキーワードの一覧を次に示します。

表2‒60 置き換えキーワードの一覧

キーワード

置換する内容

JCO_JP1USER

JP1/IM - ManagerにログインしたJP1のユーザー

JCO_INSTALL_PATH

JP1/IM - Viewのインストールフォルダの名称

(2)レジストリー置換文字列

定義内にレジストリー置換文字列を指定すると,記述されたレジストリーから値を取得して文字列の置換が実行されます。レジストリー置換文字列の形式を次に示します。

[\レジストリーキー\レジストリーキー\…\レジストリー値]

レジストリー置換文字列の中には,さらに,レジストリー専用の置き換えキーワード「%UPPER%」を使用できます。「%UPPER%」を使用すると,レジストリーキーの中で同一階層のキーの中からキー名称で文字列比較が実行され,最も大きな文字列を選択して置換が実行されます。このキーワードの目的は,レジストリーキー内でバージョンごとにキーを分けているときに,常に最新のバージョンが得られるようにすることです。

「%UPPER%」は,レジストリー文字列内に1か所だけ指定できます。次に,「%UPPER%」を使用してJP1/SAMPLEのレジストリーを指定する例を示します。

[\HKEY_LOCAL_MACHINE\SOFTWARE\HITACHI\SAMPLE\%UPPER%\PATHNAME\PATH00]

このように指定すると,「%UPPER%」の部分が最新バージョンに置き換えられ,常に最新の実行形式ファイルが得られます。

例えば,レジストリーキーに次の二つが存在した場合,"0700">"0671"となるため,"0700"のレジストリーから値を取得します。

[\HKEY_LOCAL_MACHINE\SOFTWARE\HITACHI\SAMPLE\0671\PATHNAME\PATH00]

[\HKEY_LOCAL_MACHINE\SOFTWARE\HITACHI\SAMPLE\0700\PATHNAME\PATH00]

description="アプリケーション実行の説明文";

ブロック内のアプリケーション実行定義に説明を付加します。このステートメントは,ブロック内で1回だけ記述できます。

文字数の制限はありませんが,50文字以内にすることをお勧めします。

アプリケーション実行定義ブロックの定義例を次に示します。

@define-block type="application-execution-def";

id="HITACHI_JP1_SAMPLE";

path="C:\Program Files\Hitachi\JP1\bin\sample.exe";

description="日立のサンプルプログラム";

@define-block-end;

定義例

アプリケーション実行定義ファイルの定義例を次に示します。

@file type="application-execution-definition", version="0300";
#-----------------------------------------
@define-block type="application-execution-def";
id="jco_notepad";
path="C:\winnt40\system32\notepad.exe";
@define-block-end;
#-----------------------------------------
@define-block type="application-execution-def";
id="jco_dmp";
path="[\HKEY_LOCAL_MACHINE\SOFTWARE\HITACHI\NETM/DM/P\0521/
    A\PathName\Path00]\bin\DMPSTS.exe";
@define-block-end;