特定のコマンドを定期的に実行および実行するサービスがインストールされています。ローカルシステムアカウントとして実行されます。サービスのソースコードは私の制御下にはありませんが、サービスがオンになっているWindows XP SP3ボックスを制御します。
最近、このサービスの%PATH%の最前線に特定のパスを配置するようにシステムが変更されました。そのパスの実行可能ファイルの1つは、私のサービスが使用するコマンドの1つと同じ名前であるため、サービスは誤った実行可能ファイルを誤って使用します。
サービスが正しいコマンドを実行できるように、元に戻す必要があります。 %PATH%を変更して、サービスに表示されるようにするにはどうすればよいですか?私はすでに試しましたsetx -m ...
しかし運がありません。
問題のディレクトリは、システム全体のPATH
環境変数、またはローカルシステムユーザーの個人環境変数で指定されています。
ローカルシステムユーザーの個人環境変数はHKEY_USERS\.DEFAULT\Environment
で指定されます。マシン全体の環境変数はHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
で指定されます。前者はレジストリ以外からは簡単にアクセスできませんが、後者は環境変数ダイアログからアクセスできます(詳細設定)システムプロパティのタブ.