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


SafeHandle.IsInvalid Свойство

Определение

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

public:
 abstract property bool IsInvalid { bool get(); };
public abstract bool IsInvalid { get; }
member this.IsInvalid : bool
Public MustOverride ReadOnly Property IsInvalid As Boolean

Значение свойства

true Значение дескриптора недопустимо; falseв противном случае .

Примеры

В следующем примере проверяется, был ли файл открыт успешно. Этот пример кода является частью более крупного примера, предоставленного для SafeHandle класса.

// Determine if file is opened successfully.
if (_handle.IsInvalid)
    throw new Win32Exception(Marshal.GetLastWin32Error(), fileName);

Комментарии

Производные IsInvalid классы должны реализовать свойство, чтобы среда CLR может определить, требуется ли критическое завершение. Производные классы должны предоставлять реализацию, которая соответствует общему типу обработки, которую они поддерживают (0 или -1 является недопустимой). Затем эти классы можно получить для конкретных типов безопасных дескрипторов.

IsClosed В отличие от свойства, которое сообщает, завершен ли SafeHandle объект с помощью базового дескриптора, IsInvalid свойство вычисляет, всегда ли данное значение дескриптора считается недопустимым. IsInvalid Поэтому свойство всегда возвращает одинаковое значение для любого значения дескриптора.

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