SafeHandleZeroOrMinusOneIsInvalid Klasse

Definition

Stellt eine Basisklasse für sichere Win32-Handleimplementierungen bereit, in denen ein Wert von 0 (null) oder -1 ein ungültiges Handle angibt.

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
Vererbung
SafeHandleZeroOrMinusOneIsInvalid
Abgeleitet
Attribute

Hinweise

Diese Klasse wird von der System.Runtime.InteropServices.SafeHandle-Klasse abgeleitet. Es beschreibt das Format eines ungültigen Handles. Beispielsweise verwenden einige Handles -1 als ungültigen Handlewert, während andere 0 verwenden. Weitere Ableitungen dieser Klasse (z. B. Datei- oder Registrierungshandles) können dies weiter spezialisieren. In der SafeFileHandle -Klasse finden Sie ein Beispiel für eine Klasse, die von abgeleitet wird SafeHandleZeroOrMinusOneIsInvalid.

Wichtig

Dieser Typ implementiert die IDisposable-Schnittstelle. Nach Abschluss der Verwendung sollten Sie den Typ entweder direkt oder indirekt löschen. Zum direkten Löschen des Typs rufen Sie seine Dispose-Methode in einem try/catch-Block auf. Zum indirekten Löschen verwenden Sie ein Sprachkonstrukt wie using (in C#) oder Using (in Visual Basic). Weitere Informationen finden Sie im Abschnitt „Verwenden eines Objekts, das IDisposable implementiert“ des Themas „Die IDisposable-Schnittstelle“.

Verwenden Sie die SafeHandleZeroOrMinusOneIsInvalid -Klasse immer dann, wenn Sie eine nicht verwaltete Ressource ohne vorhandenen verwalteten Wrapper sicher umschließen müssen.

Konstruktoren

SafeHandleZeroOrMinusOneIsInvalid(Boolean)

Initialisiert eine neue Instanz der SafeHandleZeroOrMinusOneIsInvalid-Klasse und gibt an, ob das Handle zuverlässig freigegeben werden soll.

Felder

handle

Gibt das zu umschließende Handle an.

(Geerbt von SafeHandle)

Eigenschaften

IsClosed

Ruft einen Wert ab, der angibt, ob das Handle geschlossen ist.

(Geerbt von SafeHandle)
IsInvalid

Ruft einen Wert ab, der angibt, ob das Handle ungültig ist.

Methoden

Close()

Markiert das Handle für das Freigeben und Verfügbarmachen von Ressourcen.

(Geerbt von SafeHandle)
DangerousAddRef(Boolean)

Inkrementiert manuell den Verweiszähler für SafeHandle-Instanzen.

(Geerbt von SafeHandle)
DangerousGetHandle()

Gibt den Wert des handle-Felds zurück.

(Geerbt von SafeHandle)
DangerousRelease()

Dekrementiert manuell den Verweiszähler für eine SafeHandle-Instanz.

(Geerbt von SafeHandle)
Dispose()

Gibt alle von der SafeHandle-Klasse verwendeten Ressourcen frei.

(Geerbt von SafeHandle)
Dispose(Boolean)

Gibt die von der SafeHandle-Klasse verwendeten, nicht verwalteten Ressourcen frei und gibt an, ob ein normaler Freigabevorgang ausgeführt werden soll.

(Geerbt von SafeHandle)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ReleaseHandle()

Führt beim Überschreiben in einer abgeleiteten Klasse den Code aus, der für das Freigeben des Handles erforderlich ist.

(Geerbt von SafeHandle)
SetHandle(IntPtr)

Legt das Handle für das angegebene, bereits vorhandene Handle fest.

(Geerbt von SafeHandle)
SetHandleAsInvalid()

Markiert ein Handle als nicht mehr verwendet.

(Geerbt von SafeHandle)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen