Jak sprawdzić, czy użytkownik może czytać / zapisywać konkretny klucz rejestru?

Czy ktoś wie, jak mogę programowo sprawdzić (używając C #), czy mój program będzie w stanie odczytać / zapisać konkretny klucz rejestru (w szczególności: „SOFTWARE Microsoft Windows CurrentVersion”)?

Pytam, ponieważ mój program ma opcję włączenia lub wyłączenia zachowania „uruchom przy starcie”. Chcę wyłączyć tę opcję, jeśli bieżący użytkownik nie może dokonywać zmian w rejestrze. Czy ten klucz jest zawsze dozwolony przez obecnego użytkownika, czy też istnieje możliwość, że został on zablokowany? Jeśli to drugie, jak mam to sprawdzić?

Widziałem kilka sprzecznych sposobów sprawdzania uprawnień rejestru - ale w zasadzie nie mogę znaleźć sposobu na sprawdzenie konkretnego klucza, zanim spróbuję go przeczytać. Wolałbym wykonać sprawdzenie przed uzyskaniem dostępu do klucza niż próbować uzyskać do niego dostęp i otrzymać wyjątek.

Każda pomoc jest bardzo ceniona.

Tomek

questionAnswers(6)

yourAnswerToTheQuestion