UnauthorizedAccessException vs SecurityException

Eri*_*tas 22 .net securityexception exception-handling unauthorizedaccessexcepti

FileStream的MSDN构造函数表示它可能抛出UnauthorizedAccessException或SecurityException.以下是MSDN对这些异常的说法.

UnauthorizedAccessException: 操作系统因I/O错误或特定类型的安全错误而拒绝访问时引发的异常.

SecurityException: 检测到安全性错误时引发的异常.

这两个相似的例外情况有何不同?什么情况会引发他们中的任何一个?

Jar*_*Par 12

UnauthorizedAccessException当访问磁盘上的文件时出现权限错误,则抛出A. 这是操作系统级别的错误,例如正常用户试图覆盖操作系统文件(如kernel32.dll).

SecurityException如果CLR级别存在安全违规,则抛出A. 例如,如果您作为低访问ClickOnce应用程序运行,并尝试读取/写入该进程中CLR安全设置禁止的文件系统中的某个位置.