奇妙な問題があります。ログインセッションでパスを変更するレジストリ内の永続的なパスは変更されません。
explorer.exeプロセスの環境変数の変更を監視したいのですが、登録-CimIndicationEventとともにWin32_プロセスCIM オブジェクト。ただし、環境変数については何も表示されません。見落としているプロパティがあるのでしょうか? 別のプロセスの現在の環境を取得し、その変更を追跡する別の方法はありますか?
そこにはWin32_環境クラス。ただし、環境変数が格納されているレジストリ タグから読み取ります。作業変数は読み取りません。
答え1
この環境は、API または WMI を通じて簡単に利用できるものではありません。
環境を追跡する最も簡単な方法は、定期的にチェックすることです。プロセスエクスプローラー変化がいつ起こるかを確認します。
C++ コードを少し書けるなら、別のプロセスの環境にアクセスする方法に関するリソースがいくつかあります。これを使用して、環境を監視するツールを作成できます。