JP1/NETM/DM 運用ガイド1 (Windows(R)用)

[目次][用語][索引][前へ][次へ]

付録D.4 スクリプト関数

JP1/NETM/DMのインストールスクリプトおよびコレクトスクリプトで使用できる関数について説明します。これらの関数を使用すると,プログラムのバージョンを取得したり,プログラムマネージャに新しくアイコンを追加したりできます。

スクリプト関数の一覧を次の表に示します。

表D-2 スクリプト関数の一覧

スクリプト関数 使用種別 説明
Backup I 稼働中のバージョンのソフトウェアのバックアップを取得する
Collection C ディレクトリまたはファイルをリモートコレクトする
CreateIcon I 指定したプログラムグループに,指定したプログラムのアイコンを追加する
CreateProgramGroup I プログラムマネージャに,指定したプログラムグループ名でグループを作成する
CreateShortCut I リモートインストール先にショートカットを作成する
DelBackup I リモートインストール先のバックアップを削除する
DmSetStatus I,C エラーステータスコードを設定する
GetBackupStatus I バックアップを取得したかどうかを返す
GetErrorStatus I,C スクリプト処理のどこでエラーが発生したかを調べる
GetResourceName I インストールをするソフトウェアのパッケージ識別IDを調べる
GetResourceVersion I インストールをするソフトウェアのバージョン,世代番号を調べる
GetSoftwareName I インストールするソフトウェアのパッケージ名を取得する
GetStatus I,C SetStatus()で設定したステータスの現在の値を取得する
Install I ファイルを指定のディレクトリへ復元する
LogFile I,C 任意のメッセージをログファイルへ出力する
MsgBox I ダイアログボックスでメッセージを表示する
Restore I バックアップを取得したソフトウェアを復元する
SetStatus I,C 任意の処理状態をステータスとして設定する
Setup I Install関数で復元したファイル群を使ってセットアップをするプログラムを起動する
Shell I,C 外部プログラムの起動
SysInfoCoProcessor I コプロセッサの有無を調べる
SysInfoCpuType I CPU種別を調べる
SysInfoHDEmpty I ハードディスクの空き容量を調べる
SysInfoMemory I 各種メモリ容量を取得する
SysInfoOSVersion I 使用中のオペレーティングシステム(OS)のバージョンを調べる
VerInfo I 指定したソフトウェアのバージョンを調べる
VerInfoEx I パッケージ名またはパッケージ識別IDからインストール済みのソフトウェアのバージョンを調べる
(凡例)
I:インストールスクリプトで使用できる
C:コレクトスクリプトで使用できる

各スクリプト関数は,次のように記述してください。関数名の直後,および関数の引数の前後には,0文字以上の半角スペース,TABコード,または改行コードを使用してください。

関数名(関数の引数1[,関数の引数2])

各関数名の英大文字と小文字は,区別されるので注意が必要です。各関数の引数の数は固定で,関数ごとに異なっています。引数は,直接値で指定しても,変数で指定してもかまいません。ただし,システム変数は直接値で指定してください。

<この項の構成>
(1) Backup関数
(2) Collection関数
(3) CreateIcon関数
(4) CreateProgramGroup関数
(5) CreateShortCut関数
(6) DelBackup関数
(7) DmSetStatus関数
(8) GetBackupStatus関数
(9) GetErrorStatus関数
(10) GetResourceName関数
(11) GetResourceVersion関数
(12) GetSoftwareName関数
(13) GetStatus関数
(14) Install関数
(15) LogFile関数
(16) MsgBox関数
(17) Restore関数
(18) SetStatus関数
(19) Setup関数
(20) Shell関数
(21) SysInfoCoProcessor関数
(22) SysInfoCpuType関数
(23) SysInfoHDEmpty関数
(24) SysInfoMemory関数
(25) SysInfoOSVersion関数
(26) VerInfo関数
(27) VerInfoEx関数

(1) Backup関数

(a) 機能

リモートインストール先で,インストール対象のパッケージがインストール済みの場合,稼働しているバージョンのソフトウェアのバックアップを取得します。

(b) 形式
Backup()
(c) 引数

なし

(d) 戻り値

なし

(2) Collection関数

(a) 機能

指定したディレクトリまたはファイルをリモートコレクトします。

Collection関数は,コレクトファイルで最低3回呼び出さなければなりません。まず,引数にCOLLECTION_STARTを指定してCollection関数を呼び出し,リモートコレクトに関する設定を初期化します。そして,リモートコレクトするファイルまたはディレクトリを設定するため,引数にファイルかディレクトリを指定してCollection関数を呼び出します(100回まで複数回可)。最後に,引数にCOLLECTION_ENDを指定してCollection関数を呼び出し,収集を実行します。

(b) 形式
Collection(COLLECTION_START)
Collection(String リモートコレクトするディレクトリ名またはファイル名)
Collection(COLLECTION_END)
(c) 引数
(d) 戻り値

なし

(3) CreateIcon関数

(a) 機能

プログラムマネージャにアイコンを追加します。追加先のプログラムグループ,追加したい実行ファイル,およびアイコンのタイトルを指定してください。

この関数は,バックグラウンドインストールモードでは使用できません。

(b) 形式
CreateIcon(String プログラムグループ名,
           String 実行ファイルのパス名,
           String アイコンのタイトル)
(c) 引数
(d) 戻り値

なし

(e) 注意事項

他社ソフトウェアや日立プログラムプロダクトのインストールには,この関数を使用できません。

(4) CreateProgramGroup関数

(a) 機能

プログラムマネージャにグループを作成します。プログラムグループ名を指定してください。

この関数は,バックグラウンドインストールモードでは使用できません。

(b) 形式
CreateProgramGroup(String プログラムグループ名)
(c) 引数
(d) 戻り値

なし

(e) 注意事項

他社ソフトウェアや日立プログラムプロダクトのインストールをする場合は,この関数を使用できません。

(5) CreateShortCut関数

(a) 機能

リモートインストール先にショートカットを作成します。この関数は,リモートインストール先が,Windows Me,Windows 98,またはWindows 95のときだけ使用できます。

この関数は,バックグラウンドインストールモードでは使用できません。

(b) 形式
CreateShortCut(String ショートカット作成先のパス名,
               String ショートカットのリンク先パス名,
               String ショートカットのタイトル)
(c) 引数
(d) 戻り値

なし

(6) DelBackup関数

(a) 機能

Backup関数で取得したバックアップを削除します。バックアップが取得されていない場合は,この関数を呼び出しても無視されます(エラーにはなりません)。

(b) 形式
DelBackup()
(c) 引数

なし

(d) 戻り値

なし

(7) DmSetStatus関数

(a) 機能

指定したエラーステータスコード(UNIX NETM/DMシステムではエンドステータス)を設定できます。条件不一致でスクリプトを終了する場合に,設定してください。設定したエラーステータスコードは,インストール処理またはコレクト処理の終了コードとして,上位システムに通知されます。

(b) 形式
DmSetStatus(System エラーステータスコード)
(c) 引数
(d) 戻り値

なし

(8) GetBackupStatus関数

(a) 機能

今回のリモートインストールで,バックアップを取得したかどうかを返します。

(b) 形式
System GetBackupStatus()
(c) 引数

なし

(d) 戻り値

(9) GetErrorStatus関数

(a) 機能

スクリプトのどの個所でエラーが発生したかを調べます。On InstallErrorステートメントとOn CollectionErrorステートメントの中でだけ使用できます。

(b) 形式
System GetErrorStatus()
(c) 引数

なし

(d) 戻り値

(10) GetResourceName関数

(a) 機能

インストールをするソフトウェアのパッケージ識別IDを取得します。

(b) 形式
String GetResourceName()
(c) 引数

なし

(d) 戻り値

(11) GetResourceVersion関数

(a) 機能

インストールをするソフトウェアのバージョン,世代番号を取得します。

(b) 形式
String GetResourceVersion()
(c) 引数

なし

(d) 戻り値

(12) GetSoftwareName関数

(a) 機能

インストールするソフトウェアのパッケージ名を取得します。

(b) 形式
String GetSoftwareName()
(c) 引数

なし

(d) 戻り値

(13) GetStatus関数

(a) 機能

SetStatus関数で設定したステータスの現在の値を取得します。

(b) 形式
Integer GetStatus()
(c) 引数

なし

(d) 戻り値
(e) 注意事項

SetStatus関数でステータスを設定していない場合,0が返されます。

(14) Install関数

(a) 機能

配布されたソフトウェアをインストール(復元)します。

(b) 形式
Install(String インストール先ディレクトリ名の文字列)
(c) 引数
(d) 戻り値

なし

(e) 指定例
(例1)ドライブ名を数字で指定する場合
  :
Install("1:\users\home\instdir")
  :
(例2)Setup関数と組み合わせて使用する場合
  :
Install(SETUP_DIRECTORY)
  :
Setup()
  :
(f) 注意事項

同じスクリプトにInstall関数を複数回記述することはできません。

(15) LogFile関数

(a) 機能

任意のメッセージ文字列をログファイルに出力します。出力先は,クライアントのインストール先ディレクトリ下のLOG\MAIN.LOGとLOG\USER.LOGです。クライアントのメッセージログと関連づけてメッセージを確認したいときは,MAIN.LOGを利用してください。スクリプトの開発者が任意に出力したメッセージだけを確認する場合は,USER.LOGを利用してください。また,このログは,Windows NTのイベントログにも取得されます(イベントIDが60000以降)。

(LOG\MAIN.LOGの例)
100 2004/2/3 22:29:12:13 Informational User ユーザメッセージ:XXXプログラムをアップデートしました。
(LOG\USER.LOGの例)
150 2004/2/3 22:29:12:13 1128 XXXプログラムをアップデートしました。
(b) 形式
LogFile(String 任意のメッセージ文字列)
(c) 引数
(d) 戻り値

なし

(e) 注意事項

この関数の使用は必要最小限にしてください。この関数を多く利用すると,ディスクの入出力が多くなり,性能が低下する原因になります。

(16) MsgBox関数

(a) 機能

任意のメッセージをメッセージボックスに表示します。メッセージボックスに表示されるボタンは,[OK]だけです。

この関数は,バックグラウンドインストールモードでは使用できません。

(b) 形式
MsgBox(String メッセージ文字列, Integer 表示時間)
(c) 引数
(d) 戻り値

なし

(17) Restore関数

(a) 機能

リモートインストール実行前に取得したバックアップを復元して,旧バージョンに戻します。バックアップが取得されていない場合は,この関数を呼び出してもエラーにはならないで無視されます。この関数をOn InstallError Doステートメント内に記述した場合,リモートインストールでエラーが発生したときだけバックアップが復元されます。

(b) 形式
Restore()
(c) 引数

なし

(d) 戻り値

なし

(18) SetStatus関数

(a) 機能

スクリプトの処理状態を,任意のステータスコードで保存できます。保存したステータスコードは,GetStatus関数で取得してください。

スクリプトが終了すると,最後に設定したステータスコードがインストール処理またはコレクト処理の終了コードとして上位のシステムに通知されます。

(b) 形式
SetStatus(Integer ステータスコード)
(c) 引数
(d) 戻り値

なし

(e) 注意事項

スクリプトで最初にSetStatus関数が実行されるまでは,ステータスコードとして0が仮定されます。

(19) Setup関数

(a) 機能

Install関数で復元したファイルを使って,セットアップをするプログラムを起動します。

Windowsアプリケーションのセットアッププログラムの多くは,GUI上で動作します。JP1/NETM/DMでは,このようなGUIのセットアッププログラムを使用できますが,その場合,AITファイルまたはレコーダファイル(Visual Testのスクリプト)を用意してください。画面に対してクライアントで自動的に応答するのに必要です。Automatic Installation Tool実行ライブラリがAITファイルを使って,またはVisual Test実行ライブラリがレコーダファイルを使って,GUIのセットアッププログラムに自動的に応答します。

AITファイルまたはレコーダファイルの作成方法については,マニュアル「Automatic Installation Toolガイド」を参照してください。

この関数は,バックグラウンドインストールモードでは使用できません。

(b) 形式
Setup()
(c) 引数

なし

(d) 戻り値

なし

(e) 注意事項

(20) Shell関数

(a) 機能

外部プログラムを起動します。

(b) 形式
Shell(String 起動プログラムのフルパス名)
(c) 引数
(d) 戻り値

なし

(e) 指定例
(例1)
Shell("c:\winnt\system32\notepad.exe")
(例2)
Dim S As String
S = "1:\users\home\prog01.exe file01.txt"
Shell(S)
(例3)
Shell("""c:\Program Files\prog2.exe""")
(例4)
Shell("""c:\Program Files\Test\aaa.exe"" /f C:\temp\bbb.exe /I: /S ""ccc.txt""")
(f) 注意事項

(21) SysInfoCoProcessor関数

(a) 機能

コプロセッサがあるかどうかを返します。

(b) 形式
System SysInfoCoProcessor()
(c) 引数

なし

(d) 戻り値
(e) 注意事項

Windowsにリモートインストールをする場合に,コプロセッサなしの条件にすると,スクリプトのシステム条件不一致でエラーになります。

(22) SysInfoCpuType関数

(a) 機能

CPU種別を取得します。

(b) 形式
System SysInfoCpuType()
(c) 引数

なし

(d) 戻り値
(e) 注意事項

CrusoeなどIntel互換CPUの場合は,I_PENTIUMが返されます。

(23) SysInfoHDEmpty関数

(a) 機能

指定したハードディスクドライブの,空き容量を取得します。

(b) 形式
Integer SysInfoHDEmpty(System ドライブ名)
(c) 引数
(d) 戻り値

(24) SysInfoMemory関数

(a) 機能

各種メモリ容量を取得します。

(b) 形式
Integer SysInfoMemory(メモリ種別)
(c) 引数
(d) 戻り値

(25) SysInfoOSVersion関数

(a) 機能

現在使用中の各種OSのバージョンを取得します。

(b) 形式
String SysInfoOSVersion(OS種別)
(c) 引数
(d) 戻り値
(e) 注意事項

(26) VerInfo関数

(a) 機能

パッケージ識別IDで指定したソフトウェアのバージョンを返します。引数の新旧タイプには,ACTIVE_VERSION(稼働中の新バージョン)を指定してください。

(b) 形式
String VerInfo(新旧タイプ, String パッケージ識別ID)
(c) 引数
(d) 戻り値
(e) 注意事項

この関数は,JP1/NETM/DMを使ってインストールしたソフトウェアのバージョンを取得するものです。直接FDなどからインストールしたソフトウェアについては,この関数ではバージョンを取得できません。

(27) VerInfoEx関数

(a) 機能

インストール済みのパッケージのバージョンを,パッケージ名またはパッケージ識別IDから取得します。

(b) 形式
String VerInfoEx(PACKAGE_NAME, String パッケージ名)
String VerInfoEx(PACKAGE_ID, String パッケージ識別ID)
(c) 引数
(d) 戻り値
(e) 注意事項

この関数は,JP1/NETM/DMを使ってインストールしたソフトウェアのバージョンを取得するものです。直接FDなどからインストールしたソフトウェアについては,JP1/NETM/DMの「ソフトウェア検索機能」を使って検索できるソフトウェアのバージョンだけを取得できます。