コマンドラインを指定するときの注意事項について,次に示します。
- ユーザプログラムなどから実行形式(SPTXE.EXE)でスクリプトファイルを実行する場合は,実行するスクリプトファイル名の指定が必要です。スクリプトファイル名は,コマンドラインの先頭に指定しなければなりません。
- 〔コマンドラインの指定形式〕
- SPTXE.EXE スクリプトファイル名 位置変数 /SPALV(n) /SPXLV(n)
- /NOEVLOG(n,n,…)
- 指定したコマンドラインの値はスクリプトファイル単位で有効ですが,実行コンピュータのすべてのスクリプトファイルに対して有効にしたい場合は,次のレジストリにコマンドラインの値を設定してください。
- 〔レジストリキー〕
- HKEY_LOCAL_MACHINE¥Software¥Hitachi¥JP1/Script¥SPTF¥SPV
- 〔値〕
- CommandLine(文字列)
- 注意
- ダイアログとレジストリの両方にコマンドラインを指定している場合は,両方の指定が有効になります。ただし,ダイアログに"/SPXLV(3)",レジストリに"/SPXLV(0)"のように,同じパラメタに異なる指定をしている場合はダイアログの指定が優先されます。
- サービスとランチャのイベントログの出力を抑止する場合は,実行環境ファイルのコマンドラインではなく,上記レジストリに/NOEVLOG,または/NOEVLOG(4)を指定してください。
- 実行環境のコマンドラインに/NOEVLOG,または/NOEVLOG(n,n,…)が指定された場合,/SPALV(n)や/SPXLV(n)と異なり位置変数として扱われます。位置変数として扱わない場合は,次のレジストリの値に1を設定してください。
- 〔レジストリキー〕
- HKEY_LOCAL_MACHINE¥Software¥Hitachi¥JP1/Script¥SPTX
- 〔値名〕
- NoEvLog_Opt(DWORD)
- 〔値〕
- 1:/NOEVLOG,または/NOEVLOG(n,n,…)を位置変数として扱わない
- n個のダブルクォーテーション(")を文字としてそのままパラメタに含める場合は,(n*4)個のダブルクォーテーション(")を指定し,パラメタ全体をダブルクォーテーション(")で囲まなければなりません。※
なお,次のレジストリの値に1を設定した場合は,(n*2)個のダブルクォーテーション(")を指定します。
- 〔レジストリキー〕
- HKEY_LOCAL_MACHINE¥Software¥Hitachi¥JP1/Script¥SPTX
- 〔値名〕
- DQString_Opt(DWORD)
- 〔値〕
- 1:パラメタ文字列にn個のダブルクォーテーション(")を含む場合,(n*2)個のダブルクォーテーション(")を指定し,パラメタ全体をダブルクォーテーション(")で囲む。
このレジストリを設定しない場合,指定方法が複雑になりますので,新規のシステム開発時などは,この設定をすることをお勧めします。
- 注※
- ユーザプログラムなどから実行形式(SPXE.EXE)でコマンドラインを指定してスクリプトを実行する場合は,(n*4)個のダブルクォーテーション(")とパラメタ全体を囲むダブルクォーテーション(")のそれぞれを2倍のダブルクォーテーション(")で指定します。また,NetExecコマンドでは,((((n*4)*2)*2)*2)個のダブルクォーテーション(")と,パラメタ全体を囲む15個のダブルクォーテーション(")で指定します。なお,上記のレジストリの値に1を設定した場合は,ExecコマンドやNetExecコマンドでも(n*2)個のダブルクォーテーション(")を指定し,パラメタ全体をダブルクォーテーション(")で囲みます。
- コマンドラインのパラメタの指定が,スクリプト起動時とスクリプトの実行環境ファイルの両方にある場合,両方の指定が有効になります。この場合,スクリプト起動時のコマンドラインのパラメタが先,実行環境ファイルのコマンドラインのパラメタが後になります。