Прочитать на английском

Поделиться через


UnauthorizedAccessException Класс

Определение

Исключение, которое возникает, когда операционная система запрещает доступ из-за ошибки ввода-вывода или определенного типа ошибки безопасности.

C#
public class UnauthorizedAccessException : Exception
C#
public class UnauthorizedAccessException : SystemException
C#
[System.Serializable]
public class UnauthorizedAccessException : SystemException
C#
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class UnauthorizedAccessException : SystemException
Наследование
UnauthorizedAccessException
Наследование
UnauthorizedAccessException
Производный
Атрибуты

Примеры

В следующем примере показано исключение UnauthorizedAccessException, которое возникает при попытке записи в файл только для чтения.

C#
using System;
using System.IO;

public class Example
{
   public static void Main()
   {
      string filePath = @".\ROFile.txt";
      if (! File.Exists(filePath))
         File.Create(filePath);
      // Keep existing attributes, and set ReadOnly attribute.
      File.SetAttributes(filePath, 
                        (new FileInfo(filePath)).Attributes | FileAttributes.ReadOnly);

      StreamWriter sw = null;
      try {
         sw = new StreamWriter(filePath);
         sw.Write("Test");
      }
      catch (UnauthorizedAccessException) {
         FileAttributes attr = (new FileInfo(filePath)).Attributes;
         Console.Write("UnAuthorizedAccessException: Unable to access file. ");
         if ((attr & FileAttributes.ReadOnly) > 0)
            Console.Write("The file is read-only."); 
       }
       finally {
         if (sw != null) sw.Close();
      }   
   }
}
// The example displays the following output:
//    UnAuthorizedAccessException: Unable to access file. The file is read-only.

Комментарии

Исключение UnauthorizedAccessException обычно создается методом, который упаковывает вызов API Windows. Чтобы найти причины исключения, изучите текст свойства Message объекта исключения.

UnauthorizedAccessException использует HRESULTCOR_E_UNAUTHORIZEDACCESS, который имеет значение 0x80070005.

Конструкторы

UnauthorizedAccessException()

Инициализирует новый экземпляр класса UnauthorizedAccessException.

UnauthorizedAccessException(SerializationInfo, StreamingContext)
Устаревшие..

Инициализирует новый экземпляр класса UnauthorizedAccessException с сериализованными данными.

UnauthorizedAccessException(String)

Инициализирует новый экземпляр класса UnauthorizedAccessException с указанным сообщением об ошибке.

UnauthorizedAccessException(String, Exception)

Инициализирует новый экземпляр класса UnauthorizedAccessException с указанным сообщением об ошибке и ссылкой на внутреннее исключение, которое является причиной этого исключения.

Свойства

Data

Возвращает коллекцию пар "ключ-значение", которые предоставляют дополнительные пользовательские сведения об исключении.

(Унаследовано от Exception)
HelpLink

Возвращает или задает ссылку на файл справки, связанный с этим исключением.

(Унаследовано от Exception)
HResult

Возвращает или задает HRESULT, закодированное числовое значение, назначенное определенному исключению.

(Унаследовано от Exception)
InnerException

Возвращает экземпляр Exception, вызвавшего текущее исключение.

(Унаследовано от Exception)
Message

Возвращает сообщение, описывающее текущее исключение.

(Унаследовано от Exception)
Source

Возвращает или задает имя приложения или объекта, вызывающего ошибку.

(Унаследовано от Exception)
StackTrace

Возвращает строковое представление непосредственных кадров в стеке вызовов.

(Унаследовано от Exception)
TargetSite

Возвращает метод, который вызывает текущее исключение.

(Унаследовано от Exception)

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetBaseException()

При переопределении в производном классе возвращает Exception, которая является основной причиной одного или нескольких последующих исключений.

(Унаследовано от Exception)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetObjectData(SerializationInfo, StreamingContext)
Устаревшие..

При переопределении в производном классе задает SerializationInfo с информацией об исключении.

(Унаследовано от Exception)
GetType()

Возвращает тип среды выполнения текущего экземпляра.

(Унаследовано от Exception)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Создает и возвращает строковое представление текущего исключения.

(Унаследовано от Exception)

События

SerializeObjectState
Устаревшие..

Происходит при сериализации исключения для создания объекта состояния исключения, содержащего сериализованные данные об исключении.

(Унаследовано от Exception)

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

См. также раздел