Qualcuno sa come posso controllare a livello di codice (utilizzando C#) se il mio programma sarà in grado di leggere/scrivere una particolare chiave di registro (in particolare: "SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Run")?Come verificare se un utente è autorizzato a leggere/scrivere una chiave di registro particolare?
Sto chiedendo perché il mio programma ha la possibilità di abilitare o disabilitare il comportamento di 'avvio all'avvio'. Voglio disabilitare questa opzione se l'utente corrente non è autorizzato ad apportare modifiche al registro. È possibile che questa chiave venga sempre scritta dall'utente corrente o esiste la possibilità che sia stata bloccata? Se quest'ultimo, come posso controllare questo?
Ho visto diversi modi contrastanti di controllare le autorizzazioni di registro - ma fondamentalmente non riesco a trovare un modo per controllare una chiave specifica prima di provare a leggerlo. Preferirei eseguire il controllo prima di accedere alla chiave piuttosto che provare ad accedervi e ricevere un'eccezione.
Qualsiasi aiuto è molto apprezzato.
Tom
Come regola generale, le chiavi della macchina locali richiedono l'autorizzazione dell'amministratore, ma le chiavi utente corrente non fanno. – Brian
Grazie Brian, quindi è logico supporre che io possa scrivere su questa chiave (sarà diretta alla chiave dell'utente) e mantenere l'opzione abilitata in ogni momento, e quindi gestire solo le eccezioni che potrebbero generare se fallisce? – Beardy