¿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!