%PATH%
「ローカルシステム」アカウント用にMSWindowsで変数を設定するのに苦労しています。
%PATH%
変数にいくつかのパスを追加しました。そして、その新しいパス(このパスにあるツールを含む)は正常に機能しています。そのパスのツールは、CMDを使用して問題なく実行できます。しかし、同じツールがservices.msc
サービスとしてms windowsから実行されると、そのようなツールはないと言われます。したがって、何らかの理由で、%PATH%
「ローカルシステム」アカウントの変数が更新されませんでした。
このアカウントCMDへのアクセスは、次の方法で実行できることがわかりました。
psexec -i -s cmd.exe
実際、CMDはこのスタイルで実行され、PATH変数にはツールへのパスが必要ないことがわかりました。しかし、私はそれを編集することはできません。私はどちらか使用しないset
か、setx
まだ何に見える変化し%PATH%
、「ローカルシステム」アカウントから。
Windowsを再起動する必要があります。
環境変数を更新したり、新しい環境変数を追加したりする場合は、行った変更がローカルシステムアカウントで実行されるサービスに影響を与える前に、コンピューターを再起動する必要があります。
この動作は、ローカルシステムアカウントで実行されるサービスがServices.exeプロセスから環境を継承するために発生します。Services.exeプロセスは、Windowsの起動時に、ローカルシステムアカウントの環境設定を受け取ります。Services.exeプロセスはWindowsメッセージングを使用しないため、Windowsの起動後に値が変更されたことを示すメッセージを受信しても、Services.exeプロセスは環境設定を更新しません。実行中のサービスに、ローカルシステムアカウントの環境への動的な変更を強制的に確認させることはできません。
環境変数に加えたソースの変更は、Windowsを再起動するまで、ローカルシステムアカウントで実行されるサービスに影響を与えません。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加