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 .

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