¿Cómo obtener privilegios de administrador para editar app.config en C #?

Tengo un programa que usa app.config para almacenar algunas preferencias. El problema es que si el programa está instalado enC: \ archivos de programa \ <nombre del proyecto> entonces el cambio de preferencias no es posible debido al hecho de que todos los archivos enarchivos de programa \ <nombre del proyecto> están disponibles solo para el administrador.

Mi código:

    public static bool EditKeyPair(string key, string value)
    {
        bool success = true;

        // Open App.Config of executable
        System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        KeyValueConfigurationCollection settings = config.AppSettings.Settings;

        // update SaveBeforeExit
        settings[key].Value = value;

        if (!config.AppSettings.SectionInformation.IsLocked)
        {
            //save the file
            config.Save(ConfigurationSaveMode.Modified);
            Debug.WriteLine("** Settings updated.");
        }
        else
        {
            Debug.WriteLine("** Could not update, section is locked.");
            success = false;
        }

        //reload the section you modified
        ConfigurationManager.RefreshSection(config.AppSettings.SectionInformation.Name);

        return success;
    }

La pregunta es: ¿hay alguna forma de elevar los privilegios para esta acción? ¿O cómo más para resolver el problema?

¡Gracias!

Respuestas a la pregunta(3)

Su respuesta a la pregunta