c # - deaktiver kontrolpanel

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg har brugt følgende kode for at deaktivere Windows Kontrolpanel. Det deaktiverer kontrolpanelet med succes, men det kræver en system genstart for at anvende ændringer. Er der nogen, der ved, hvordan jeg kan anvende disse ændringer til kontrolpanelet med det samme uden at kræve en systemstart? Kan nogen hjælpe mig?


        RegistryKey RegKey = Registry.CurrentUser.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer");
        RegKey.SetValue("NoControlPanel", true, RegistryValueKind.DWord); RegKey.Close();

        RegKey = Registry.LocalMachine.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer");
        RegKey.SetValue("NoControlPanel", true, RegistryValueKind.DWord); RegKey.Close();

        //registry
        RegKey = Registry.CurrentUser.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersion
        Group Policy ObjectsLocalUserSoftwareMicrosoftWindowsCurrentVersionPoliciesSystem");
        RegKey.SetValue("DisableRegistryTools", true, RegistryValueKind.DWord); RegKey.Close();

        RegKey = Registry.CurrentUser.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionPoliciesSystem");
        RegKey.SetValue("DisableRegistryTools", true, RegistryValueKind.DWord); RegKey.Close();
        return true;

Bedste reference


Du kan prøve at køre Gpupdate, efter at du har lavet registreringsdatabasen. Dette bør i teorien genindlæse gruppepolitiske detaljer og derfor deaktivere kontrolpanelet. [4]

Andre referencer 1


Følgende kode vil deaktivere:


Microsoft.Win32.RegistryKey regkey = Microsoft.Win32.Registry.CurrentUser.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer");
                regkey.SetValue("NoControlPanel", true, Microsoft.Win32.RegistryValueKind.DWord);
                regkey.Close();

            regkey = Microsoft.Win32.Registry.LocalMachine.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer");
            regkey.SetValue("NoControlPanel", true, Microsoft.Win32.RegistryValueKind.DWord);
            regkey.Close();


Og koden for at genaktivere:


Microsoft.Win32.RegistryKey regkey = Microsoft.Win32.Registry.CurrentUser.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer");
                regkey.SetValue("NoControlPanel", false, Microsoft.Win32.RegistryValueKind.DWord);
                regkey.Close();

            regkey = Microsoft.Win32.Registry.LocalMachine.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer");
            regkey.SetValue("NoControlPanel", false, Microsoft.Win32.RegistryValueKind.DWord);
            regkey.Close();