Windows 7 のレジストリから UAC 状態を読み取る次の C# コードがあります。
object obj = Registry.LocalMachine.GetValue(@"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA", (long)1);
管理者/管理者以外のアカウントを使用して、Windows 7 で完全に動作します。Windows 8で提供したデフォルト値を常に返します。レジストリキーはそこにあります。その値は regedit で確認できます。しかし、C# コードはそれを読み取りません。誰でも理由がわかりますか?.net 4 アプリケーションです。ユーザー アカウントは昇格されていない管理者です。