W aplikacji systemu Windows, którą mam, dokonuję pewnych zmian w rejestrze, takich jak usuwanie określonego klucza, w niektórych scenariuszach testowych, jak w maszynie Vista z zainstalowanym UAC, otrzymuję System.UnauthorizedAccessException
. Mój kod będzie wyglądał tak:Jak radzić sobie z UnauthorizedAccessException z kodu użytkownika
try
{
//delete registry keys
}
catch (UnauthorizedAccessException ex)
{
//handling
}
catch (Exception genEx)
{
//handling
}
ale aplikacja będzie nadal iść upaść, nie są obsługiwane przez blok catch.. Czy jest jakiś sposób, bym sobie z tym poradził?
Czy na pewno kod powodujący awarię aplikacji znajduje się w instrukcji try? –
http://www.codeproject.com/KB/vista-security/MakingAppsUACAware.aspx –
Musisz być w stanie złapać ten wyjątek. Może mógłbyś dać nam więcej kodu (mam na myśli przynajmniej wywołanie, które wyrzuca wyjątek), aby pomóc to naprawić. – ken2k