環境変数とサービスとインストーラ

サービスをインストールするインストーラを作るとします。
このサービスは独自の環境変数を参照するとします。
おそらくインストーラは以下の設定をするでしょう。

  1. 環境変数を登録する
  2. サービスを登録する
  3. サービスを起動する

ところがサービスが起動した時点でサービスは登録されたはずの環境変数を参照することができません。
なぜならサービスを起動する親プロセス(services.exe)は環境変数が更新されたことを認識しないので環境変数登録後に起動した子プロセスのサービスも新しい環境変数が認識できないからです。
ということで、インストーラ

  1. 環境変数を登録する
  2. サービスを登録する
  3. OSを再起動する

するしかないかな。
OS再起動せずにサービスが新規登録された環境変数を認識する方法あったら教えて欲しいです。