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


SafeHandleZeroOrMinusOneIsInvalid Класс

Определение

Предоставляет базовый класс для реализаций безопасного дескриптора Win32, в котором значение 0 или -1 обозначает недопустимый дескриптор.

public ref class SafeHandleZeroOrMinusOneIsInvalid abstract : System::Runtime::InteropServices::SafeHandle
public abstract class SafeHandleZeroOrMinusOneIsInvalid : System.Runtime.InteropServices.SafeHandle
[System.Security.SecurityCritical]
public abstract class SafeHandleZeroOrMinusOneIsInvalid : System.Runtime.InteropServices.SafeHandle
type SafeHandleZeroOrMinusOneIsInvalid = class
    inherit SafeHandle
[<System.Security.SecurityCritical>]
type SafeHandleZeroOrMinusOneIsInvalid = class
    inherit SafeHandle
Public MustInherit Class SafeHandleZeroOrMinusOneIsInvalid
Inherits SafeHandle
Наследование
SafeHandleZeroOrMinusOneIsInvalid
Производный
Атрибуты

Комментарии

Этот класс является производным от класса System.Runtime.InteropServices.SafeHandle. Он описывает формат недопустимого дескриптора. Например, некоторые дескрипторы используют -1 в качестве недопустимого значения дескриптора, а другие — 0. Дополнительные производные от этого класса (например, дескрипторы файлов или реестров) могут дополнительно специализироваться на этом. SafeFileHandle Пример класса, производного от SafeHandleZeroOrMinusOneIsInvalid.

Важно!

Этот тип реализует интерфейс IDisposable. По окончании использования выдаленную ему память следует прямо или косвенно освободить. Чтобы сделать это прямо, вызовите его метод Dispose в блоке try/catch. Чтобы сделать это косвенно, используйте языковые конструкции, такие как using (в C#) или Using (в Visual Basic). Дополнительные сведения см. в разделе "Использование объекта, реализующего IDisposable" в статье об интерфейсе IDisposable.

Используйте класс всякий SafeHandleZeroOrMinusOneIsInvalid раз, когда необходимо безопасно упаковать неуправляемый ресурс, у которых нет управляемой оболочки.

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

SafeHandleZeroOrMinusOneIsInvalid(Boolean)

Инициализирует новый экземпляр класса SafeHandleZeroOrMinusOneIsInvalid, указывающий, нужно ли освобождать дескриптор наверняка.

Поля

handle

Определяет инкапсулируемый дескриптор.

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

Свойства

IsClosed

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

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

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

Методы

Close()

Помечает дескриптор для освобождения самого дескриптора и соответствующих ресурсов.

(Унаследовано от SafeHandle)
DangerousAddRef(Boolean)

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

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

Возвращает значение поля handle.

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

Вручную уменьшает счетчик ссылок для экземпляра SafeHandle.

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

Освобождает все ресурсы, используемые классом SafeHandle.

(Унаследовано от SafeHandle)
Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые классом SafeHandle, определяя, нужно ли выполнять обычную операцию удаления.

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

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

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

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

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

Возвращает объект Type для текущего экземпляра.

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

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

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

При переопределении в производном классе выполняет код, необходимый для освобождения дескриптора.

(Унаследовано от SafeHandle)
SetHandle(IntPtr)

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

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

Помечает дескриптор как больше не используемый.

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

Возвращает строку, представляющую текущий объект.

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

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

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