11

アプリケーションでシステム環境変数を設定しようとしていますが、SecurityException. Google で見つけたすべてをテストしましたが、成功しませんでした。これが私のコードです(私は自分のPCの管理者であり、VS2012を管理者として実行していることに注意してください):

試行 1

new EnvironmentPermission(EnvironmentPermissionAccess.Write, "TEST1").Demand();
Environment.SetEnvironmentVariable("TEST1", "MyTest", EnvironmentVariableTarget.Machine);

試行 2

new EnvironmentPermission(EnvironmentPermissionAccess.Write, "TEST1").Demand();

using (var envKey = Registry.LocalMachine.OpenSubKey(@"SYSTEM\CurrentControlSet\Control\Session Manager\Environment", true))
{

  Contract.Assert(envKey != null, @"HKLM\System\CurrentControlSet\Control\Session Manager\Environment is missing!");
  envKey.SetValue("TEST1", "TestValue");
}

試行 3また、アプリに管理者権限を持た せようとしました。

他に提案はありますか?

4

1 に答える 1