SafeHandleZeroOrMinusOneIsInvalid Classe

Definizione

Fornisce una classe base per implementazioni di handle protetti Win32 in cui il valore di 0 o -1 indica un handle non valido.Provides a base class for Win32 safe handle implementations in which the value of either 0 or -1 indicates an invalid handle.

public ref class SafeHandleZeroOrMinusOneIsInvalid abstract : System::Runtime::InteropServices::SafeHandle
[System.Security.SecurityCritical]
public abstract class SafeHandleZeroOrMinusOneIsInvalid : System.Runtime.InteropServices.SafeHandle
type SafeHandleZeroOrMinusOneIsInvalid = class
    inherit SafeHandle
Public MustInherit Class SafeHandleZeroOrMinusOneIsInvalid
Inherits SafeHandle
Ereditarietà
SafeHandleZeroOrMinusOneIsInvalid
Derivato
Attributi

Commenti

Tale classe deriva dalla classe System.Runtime.InteropServices.SafeHandle.This class derives from the System.Runtime.InteropServices.SafeHandle class. Descrive il formato di un handle non valido.It describes the format of an invalid handle. Alcuni handle, ad esempio, usano-1 come valore di handle non valido, mentre altri usano 0.For example, some handles use -1 as an invalid handle value, while others use 0. Altre derivazioni di questa classe, ad esempio gli handle di file o del registro di sistema, possono specializzare ulteriormente questo problema.Further derivations of this class (for example, file or registry handles) can specialize this further. Vedere la classe SafeFileHandle per un esempio di una classe che deriva da SafeHandleZeroOrMinusOneIsInvalid.See the SafeFileHandle class for an example of a class that derives from SafeHandleZeroOrMinusOneIsInvalid.

Importante

Il tipo implementa l'interfaccia IDisposable.This type implements the IDisposable interface. Dopo aver utilizzato il tipo, è necessario eliminarlo direttamente o indirettamente.When you have finished using the type, you should dispose of it either directly or indirectly. Per eliminare direttamente il tipo, chiamare il metodo Dispose in un blocco try/catch.To dispose of the type directly, call its Dispose method in a try/catch block. Per eliminarlo indirettamente, utilizzare un costrutto di linguaggio come ad esempio using in C# o Using in Visual Basic.To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). Per altre informazioni, vedere la sezione "Uso di un oggetto che implementa IDisposable" nell'argomento relativo all'interfaccia IDisposable.For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

Usare la classe SafeHandleZeroOrMinusOneIsInvalid ogni volta che è necessario eseguire il wrapping sicuro di una risorsa non gestita che non dispone di un wrapper gestito esistente.Use the SafeHandleZeroOrMinusOneIsInvalid class whenever you need to safely wrap an unmanaged resource that does not have an existing managed wrapper.

Costruttori

SafeHandleZeroOrMinusOneIsInvalid(Boolean)

Inizializza una nuova istanza della classe SafeHandleZeroOrMinusOneIsInvalid, specificando se l'handle deve essere rilasciato in modo affidabile.Initializes a new instance of the SafeHandleZeroOrMinusOneIsInvalid class, specifying whether the handle is to be reliably released.

Campi

handle

Specifica l'handle di cui eseguire il wrapping.Specifies the handle to be wrapped.

(Ereditato da SafeHandle)

Proprietà

IsClosed

Ottiene un valore che indica se l'handle è chiuso.Gets a value indicating whether the handle is closed.

(Ereditato da SafeHandle)
IsInvalid

Ottiene un valore che indica se l'handle non è valido.Gets a value that indicates whether the handle is invalid.

Metodi

Close()

Contrassegna l'handle per il rilascio delle risorse.Marks the handle for releasing and freeing resources.

(Ereditato da SafeHandle)
DangerousAddRef(Boolean)

Incrementa manualmente il numero di riferimenti nelle istanze di SafeHandle.Manually increments the reference counter on SafeHandle instances.

(Ereditato da SafeHandle)
DangerousGetHandle()

Restituisce il valore del campo handle.Returns the value of the handle field.

(Ereditato da SafeHandle)
DangerousRelease()

Decrementa manualmente il numero di riferimenti in un'istanza di SafeHandle.Manually decrements the reference counter on a SafeHandle instance.

(Ereditato da SafeHandle)
Dispose()

Rilascia tutte le risorse usate dalla classe SafeHandle.Releases all resources used by the SafeHandle class.

(Ereditato da SafeHandle)
Dispose(Boolean)

Rilascia le risorse non gestite usate dalla classe SafeHandle specificando se eseguire una normale operazione di eliminazione.Releases the unmanaged resources used by the SafeHandle class specifying whether to perform a normal dispose operation.

(Ereditato da SafeHandle)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
ReleaseHandle()

Quando ne viene eseguito l'override in una classe derivata, esegue il codice necessario per liberare l'handle.When overridden in a derived class, executes the code required to free the handle.

(Ereditato da SafeHandle)
SetHandle(IntPtr)

Imposta l'handle sull'handle preesistente specificato.Sets the handle to the specified pre-existing handle.

(Ereditato da SafeHandle)
SetHandleAsInvalid()

Contrassegna un handle come non più usato.Marks a handle as no longer used.

(Ereditato da SafeHandle)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Ereditato da Object)

Sicurezza

InheritanceDemand
per l'attendibilità totale per gli eredi.for full trust for inheritors. Questo membro non può essere ereditato da codice parzialmente attendibile.This member cannot be inherited by partially trusted code.

SecurityCriticalAttribute
richiede l'attendibilità totale per il chiamante immediato.requires full trust for the immediate caller. Questo membro non può essere utilizzato da codice parzialmente attendibile o trasparente.This member cannot be used by partially trusted or transparent code.

Si applica a

Vedi anche