Come installare un programma in modo che possa essere avviata all'avvio con i diritti di amministrazione su Windows Vista / 7

StackOverflow https://stackoverflow.com/questions/3323639

  •  28-09-2020
  •  | 
  •  

Domanda

Ho letto come farlo con un servizio, ma voglio sapere se è possibile con una semplice applicazione. Sto usando c #.

Grazie

È stato utile?

Soluzione

Non è possibile.L'esperienza più vicina che avresti potuto creare un servizio da eseguire elevate e un'app Winforms che funziona senza elevazione ed è solo un front-end del servizio.Devi stare attento, però, potresti causare problemi di sicurezza se non si fa muovere correttamente.

Altri suggerimenti

non puoi.L'unico altro modo per eseguire elevato senza il consenso dell'utente è come un'attività pianificata.

Windows non esegui un'applicazione elevata all'avvio perché non vuole richiedere un milione di applicazioni di avvio.Tecnicamente puoi aggirare questo scrivendo un semplice lanciatore che Shellexecute è la tua reale applicazione, ma questo ti chiederà all'avvio ed è piuttosto fastidioso.L'approccio migliore in quanto altri hanno detto è spostare le attività necessarie ai privilegi amministrativi in un servizio e mantenere la roba dell'interfaccia utente separata.

Ti incoraggio a leggere un post sul Il blog del team di UAC relativo al motivo per cui le applicazioni di avvio sono bloccate dall'elevazione .Una cosa da considerare: richiede un'elevazione impedisce completamente agli utenti standard di utilizzare la tua app.

La guida ufficiale: il tuo programma di avvio non dovrebbe richiedere un'altezza.Per essere onesti, sto avendo difficoltà a immaginare uno scenario in cui potresti legittimamente richiedere l'elevazione in un'app di avvio.Potresti fornire maggiori dettagli su perché hai bisogno di elevazione?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top