ネットのあちこちで同じ質問を繰り返していたらすみません。「Google」とは言わないでください。私は多くのGoogle検索とstackoverflow検索を行い、多くの解決策を見つけました。何も助けることができませんでした。
タスクマネージャーへのユーザーアクセスをブロックしたいアプリケーションのようなキオスクを作成しています。win32 api とグーグルで調べた結果、次のコードを思いつきました。
string user = Environment.UserDomainName + "\\" + Environment.UserName;
RegistrySecurity rs = new RegistrySecurity();
rs.AddAccessRule(new RegistryAccessRule(user,
RegistryRights.FullControl,
InheritanceFlags.None,
PropagationFlags.None,
AccessControlType.Allow));
RegistryKey rk = null;
try
{
rk = Registry.CurrentUser.CreateSubKey(
@"Software\Microsoft\Windows\CurrentVersion\Policies\System",
RegistryKeyPermissionCheck.Default, rs);
rk.SetValue("DisableTaskMgr", 1);
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
if (rk != null) rk.Close();
それでも許可エラーが発生します.. Windows 8 システムを使用しています。私のウイルス対策も無効になっています。レジストリを手動で編集すると、適切な結果が得られます。
これを解決するのを手伝ってください。