Condividi tramite


SafeNCryptHandle Classe

Definizione

Fornisce un handle Safe che può essere usato dagli oggetti CNG (Cryptography Next Generation).

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

public ref class SafeNCryptHandle abstract : Microsoft::Win32::SafeHandles::SafeHandleZeroOrMinusOneIsInvalid
public ref class SafeNCryptHandle abstract : System::Runtime::InteropServices::SafeHandle
public abstract class SafeNCryptHandle : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid
public abstract class SafeNCryptHandle : System.Runtime.InteropServices.SafeHandle
[System.Security.SecurityCritical(System.Security.SecurityCriticalScope.Everything)]
public abstract class SafeNCryptHandle : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid
type SafeNCryptHandle = class
    inherit SafeHandleZeroOrMinusOneIsInvalid
type SafeNCryptHandle = class
    inherit SafeHandle
[<System.Security.SecurityCritical(System.Security.SecurityCriticalScope.Everything)>]
type SafeNCryptHandle = class
    inherit SafeHandleZeroOrMinusOneIsInvalid
Public MustInherit Class SafeNCryptHandle
Inherits SafeHandleZeroOrMinusOneIsInvalid
Public MustInherit Class SafeNCryptHandle
Inherits SafeHandle
Ereditarietà
Ereditarietà
SafeNCryptHandle
Derivato
Attributi

Commenti

Questa classe esegue il wrapping della logica per duplicare correttamente e liberare questi handle per simulare una duplicazione nativa.

Ogni oggetto handle aperto può essere considerato come in uno dei tre stati:

  • Proprietario : creato tramite il marshalling, un handle sicuro di stile tradizionale. In particolare, esiste un solo handle proprietario per un determinato handle nativo.
  • Duplicato : punta a un handle nello stato Del titolare. Il rilascio di un handle nello stato duplicato comporta solo la decrementazione del conteggio dei riferimenti del titolare, non in una versione dell'handle nativo.
  • Titolare: tiene in un handle nativo e fa riferimento agli handle nello stato duplicato. Quando tutti gli handle duplicati vengono chiusi, l'handle titolare rilascia l'handle nativo. Un handle del titolare non verrà mai finalizzato, poiché ciò comporta una gara tra gli finalizzatori degli handle duplicati e l'handle del titolare. Si basa invece su tutti gli handle duplicati da finalizzare e decretare il conteggio dei ref su zero. Le istanze di un handle titolare non devono mai essere a cui fa riferimento nulla, ma un handle duplicato.

Costruttori

SafeNCryptHandle()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Inizializza una nuova istanza della classe SafeNCryptHandle.

SafeNCryptHandle(IntPtr, SafeHandle)

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Crea una nuova istanza della classe SafeNCryptHandle.

Campi

handle

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Specifica l'handle di cui eseguire il wrapping.

(Ereditato da SafeHandle)

Proprietà

IsClosed

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Ottiene un valore che indica se l'handle è chiuso.

(Ereditato da SafeHandle)
IsInvalid

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Ottiene un valore che indica se l'handle non è valido.

IsInvalid

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Ottiene un valore che indica se l'handle non è valido.

(Ereditato da SafeHandleZeroOrMinusOneIsInvalid)

Metodi

Close()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Contrassegna l'handle per il rilascio delle risorse.

(Ereditato da SafeHandle)
DangerousAddRef(Boolean)

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Incrementa manualmente il numero di riferimenti nelle istanze di SafeHandle.

(Ereditato da SafeHandle)
DangerousGetHandle()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Restituisce il valore del campo handle.

(Ereditato da SafeHandle)
DangerousRelease()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Decrementa manualmente il numero di riferimenti in un'istanza di SafeHandle.

(Ereditato da SafeHandle)
Dispose()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Rilascia tutte le risorse usate dalla classe SafeHandle.

(Ereditato da SafeHandle)
Dispose(Boolean)

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Rilascia le risorse non gestite usate dalla classe SafeHandle specificando se eseguire una normale operazione di eliminazione.

(Ereditato da SafeHandle)
Equals(Object)

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ReleaseHandle()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Rilascia un handle utilizzato da un oggetto Cryptography Next Generation (CNG).

ReleaseNativeHandle()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Rilascia un handle nativo utilizzato da un oggetto Cryptography Next Generation (CNG).

SetHandle(IntPtr)

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Imposta l'handle sull'handle preesistente specificato.

(Ereditato da SafeHandle)
SetHandleAsInvalid()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Contrassegna un handle come non più usato.

(Ereditato da SafeHandle)
ToString()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a