10.3.4 SPTHTerminateスクリプト実行を強制終了する

機能
スクリプト実行を強制終了します。
プロトタイプ宣言

BOOL  APIENTRY  SPTHTerminate
(
     HANDLE  hScript ,
     LPCSTR  lpszFileName ,
     UINT  uProcessID ,
     DWORD  dwOption
 );

引数
hScript
SPTHOpen関数で受け取ったスクリプト制御ハンドルを指定します。
lpszFileName
スクリプトファイル名をフルパスで指定します。
この値はSPTHOpen関数で指定したコンピュータから見たファイルパスでなければなりません。
uProcessIDを指定した場合,この値を省略(NULLを指定)することができます。
uProcessID
スクリプトのプロセスIDを指定します。
lpszFileNameを指定した場合,この値を省略(0を指定)することができます。
dwOption
オプションを0,または次の値の組み合わせで指定します。
意味
SPTH_TERM_CHILDスクリプトがExecやNetExecコマンドから起動した子プロセスも強制終了する。要求してから3分経過しても子プロセスが終了しない場合は,Win32 APIのTerminateProcess関数を使用して強制終了する。
SPTH_DQ_FILENAMEIpszFileNameで指定された値の間に空自が含まれている場合,または値がダブルクォーテーションで囲まれる場合は,空自もファイル名の一部とみなし,値がダブルクォーテーションで囲まれていない場合は,空自までをファイル名とみなす。
説明
成功した場合はTRUEを,失敗した場合はFALSEを返します。拡張エラーコードはGetLastError関数で取得できます。
なお,終了するべきプロセスが存在しなくても(すでに終了していても)この関数は正常終了(TRUEを返す)します。
正常終了した場合でも実際にプロセス終了処理を行ったかどうかはGetLastError関数の戻り値で判定できます。プロセス終了処理を行った場合はNO_ERRORを返し,そうでない場合はそれ以外の値を返します。
備考
lpszFileNameuProcessIDは,どちらかを省略することができますが,両方を指定した方がより確実に終了するべきスクリプトプロセスを特定することができるため,やむを得ない事情が無い限り両方を指定してください。
なお,複数起動したスクリプトプロセスを終了させる場合は,必ずuProcessIDを指定してください。
この関数によってスクリプトの実行を強制的に終了させた場合,スクリプトプロセスの戻り値は以下で示されるレジストリの値(デフォルトは17)になります。
〔レジストリキー〕

HKEY_LOCAL_MACHINE¥SOFTWARE¥Hitachi¥JP1/Script¥SPTX¥ExitCode

〔値名〕

Terminate

〔値のデータタイプ〕

REG_DWORD

補足
JP1/AJS2から,JP1/Scriptプロセスを強制終了する場合,SPTHTerminateを使用しています。詳細は「2.7.2(6) JP1/AJS2からのJP1/Scriptの強制終了方法」を参照してください。
対象バージョン
JP1/Script 05-00以降