2011-12-29 4 views

risposta

28

Questo è described on MSDN:

In sostanza, "asInvoker" utilizzerà le impostazioni di sicurezza predefinite dell'utente. Viene descritto come "L'applicazione viene eseguita con lo stesso token di accesso del processo principale.", Il che significa che lo stesso token di sicurezza viene utilizzato come processo chiamante, che di solito è la shell del desktop (o il processo che avvia questo, se si avvia il app da un altro programma).

Utilizzando "highestAvailable", l'applicazione verrà eseguita utilizzando i privilegi più elevati che l'utente può ottenere. Se sono un amministratore, ad esempio, riceveranno un prompt UAC e l'app verrà eseguita con i diritti di amministratore. Tuttavia, se sono utenti normali, otterranno le normali impostazioni di sicurezza, ecc.

In generale, ti consigliamo di utilizzare "asInvoker" a meno che tu non abbia un motivo specifico per richiedere più diritti.

+0

Presumibilmente non ci sono più privilegi quindi non includere affatto l'ExecutionLevel richiesto se si utilizza asInvoker? – markmnl

+0

Si direbbe che cambierebbe in "highestAvailable" se si selezionasse l'exe in "Esegui come amministratore", ma apparentemente ciò non è il caso. –

Problemi correlati