Linguaggio

SafeNCryptHandle Classe

Definizione

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

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 in uno dei tre stati seguenti:

  • Proprietario : creato tramite il gestore di marshalling, handle sicuro in stile tradizionale. In particolare, esiste un solo handle di proprietario per un handle nativo specifico.
  • Duplicato : punta a un handle nello stato Del titolare. Il rilascio di un handle nello stato duplicato comporta solo il decremento del conteggio dei riferimenti del titolare, non in una versione dell'handle nativo.
  • Supporto : mantiene un handle nativo e fa riferimento agli handle nello stato duplicato. Quando tutti gli handle duplicati vengono chiusi, l'handle del titolare rilascia l'handle nativo. Un handle di supporto non verrà mai finalizzato, poiché ciò comporta una gara tra i finalizzatori dei quadratini duplicati e il quadratino del titolare. Si basa invece su tutti gli handle duplicati da finalizzare e decrementare il conteggio dei riferimenti su zero. Le istanze di un handle di supporto non devono mai essere referenziate da alcun elemento, ma da un handle duplicato.

Costruttori

Nome Descrizione
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 un'istanza di una nuova istanza della SafeNCryptHandle classe .

Campi

Nome Descrizione
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à

Nome Descrizione
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

Nome Descrizione
Close()

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

Contrassegna l'handle per il rilascio e la liberazione 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 contatore di riferimento nelle SafeHandle istanze di .

(Ereditato da SafeHandle)
DangerousGetHandle()

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

Restituisce il valore del handle campo.

(Ereditato da SafeHandle)
DangerousRelease()

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

Decrementa manualmente il contatore di riferimento in un'istanza SafeHandle di .

(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 SafeHandle classe .

(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 SafeHandle classe specificando se eseguire un'operazione dispose normale.

(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 il 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 del Objectcorrente.

(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 usato 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 esistente 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ù utilizzato.

(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