6

在我拥有的 Windows 应用程序中,我正在对注册表进行一些更改,例如删除特定键,在某些测试场景中,例如在安装了 UAC 的 Vista 机器中,我得到System.UnauthorizedAccessException. 我的代码看起来像这样:

try
{
    //delete registry keys
}
catch (UnauthorizedAccessException ex)
{
    //handling
}
catch (Exception genEx)
{
    //handling
}

但是应用程序仍然会崩溃,而不是由 catch 块处理。有什么办法可以处理吗?

4

3 回答 3

1

您可能从 catch 块中抛出另一个异常。尝试注释 catch 块中的所有行,它应该可以正常工作。

于 2014-02-07T16:22:25.303 回答
0

最常见和最明显的原因是路径/文件程序正在尝试访问,但无法访问其运行的身份。

在MSDN上阅读更多信息

于 2014-03-08T07:09:59.003 回答
0

you have to set admin access for your application

for that just right click and select properties

and check Run as Administrator check and run your application

to run as administrator for all users click on all user button and select run as administrator for all users this will always run your application with admin access for all users

enter image description here

于 2014-03-08T07:18:52.310 回答