Google とここでの回答をしばらく検索したところ、レジストリに書き込むときに HKEY_CURRENT_USER を UAC なしで使用できるはずだという結論に達しました。とにかく、これはすべてのスレッドが述べているようです。私の問題は、このキーにアクセスして新しい値を書き込もうとすると、アクセス拒否エラーが発生することです。これは私のレジストリに何か問題があるためですか、それとも私が何か間違ったことをしているのですか? 私が使用しているコードは次のとおりです。
string runKey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run";
RegistryKey startupKey = Registry.CurrentUser.OpenSubKey(runKey, true);
startupKey.SetValue("Arebokerts application", '"' + Environment.CurrentDirectory + "\\arebokert.exe" + '"', Microsoft.Win32.RegistryValueKind.String);
誰かとても親切で、この主題に光を当てることができますか? あらゆる種類のUACプロンプトから離れ、UAC権限なしで実行できるようにしたい. このコードは「UnauthorizedAccessException」をスローします。なにが問題ですか?
宜しくお願いします。
編集
コメントの David と Hans が指摘したように、この問題は何かがキーの変更を妨げていたことが原因でした。それがcomodoアンチウイルスであることがわかったので、オフにしました。これにより、アプリケーションが正常に機能しました。すべての応答に感謝します!