[ Foro de C# ]

Como puedo hacer que mi aplicacion se inicie con Windows pero que se ejecute como administrador?

02-Aug-2017 22:34
Invitado (Gabox)
1 Respuestas

Estoy haciendo una aplicación de monitor de rendimiento donde muestra temperaturas del hardware de la pc
y claro para que pueda funcionar bien se tiene que ejecutar como administrador, la cosa es que yo agregué el
código que hace que se abra con Windows se abre pero solo cuando quito del app.Manifest la linea donde especifica que el programa debe abrirse como administrador, cuando agrego esa linea si no se abre automáticamente con Windows, necesito que se puedan hacer las dos cosas que se abra con Windows pero que se ejecute como administrador para que pueda funcionar correctamente, gracias ojala me hayan entendido, aquí les dejo los códigos de todo esto, espero que puedan ayudarme.

Codigo para que se abra automaticamente con Windows:

RegistryKey registryKey = Registry.CurrentUser.OpenSubKey
           ("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);

private void materialCheckBox2_CheckedChanged(object sender, EventArgs e)
       {
           if (materialCheckBox2.Checked)
           {
               registryKey.SetValue("WAI Monitor", Application.ExecutablePath);
               Properties.Settings.Default.StartWindows = true;
               Properties.Settings.Default.Save();
               Properties.Settings.Default.Reload();
           }
           else
           {
               registryKey.DeleteValue("WAI Monitor");
               Properties.Settings.Default.StartWindows = false;
               Properties.Settings.Default.Save();
               Properties.Settings.Default.Reload();
           }
       }



Código xml que especifica que la app se debe abrir como administrador:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

Espero sus ayudas, gracias! :)


11-Aug-2017 22:12
Nacho Cabanes (+32)

Me temo que no lo podrás hacer desde programa, sería un agujero de seguridad en el sistema. Depende de los privilegios del usuario con el que se lance la aplicación (o si la lanzas con el botón derecho y "Ejecutar como administrador").






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)