【InstallScript】 FailureActionsの設定

2020-12-29


はじめに

InstallSheldでインストーラを作成中に、InstallScriptプロジェクトでServiceを登録する処理を作成していたところ、サービス起動時のエラー発生時の処理設定、「FailureActions」の設定方法ではまったので備忘録です。

 

 

設定方法

設定方法は下記の通りです

  • ServiceAddServiceでサービスを登録する。
  • LaunchAppAndWaitを利用して該当サービスのレジストリに登録する。

 

szService = "Test Service";
sc = "failure " + "¥"" + szService + "¥"" + " action= restart/60000/restart/60000/restart/60000 reset= 3600;
LaunchAppAndWait("sc.exe", sc, LAAW_OPTION_WAIT|LAAW_OPTION_HIDDEN);

※ szServiceにはサービス名(サービス内部名が入ります)が入ります。サービスの表示名ではありません。

 

実行後、無事に以下のような設定になってました。

  • 最初のエラー発生時   :「サービスを再起動する」
  • 次のエラー発生時    :「サービスを再起動する」
  • その次以降のエラー発生時:「サービスを再起動する」

 

 

最後に

InstallScriptはちょっと書き方に癖があったり、情報があまりネット上に落ちていないので、苦労しました。