Funzione RtlEncryptMemory (ntsecapi.h)

[La funzione RtlDecryptMemory è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. È possibile che in versioni successive sia stata modificata o non sia più disponibile. Usare invece la funzione CryptProtectMemory .

La funzione RtlEncryptMemory crittografa il contenuto della memoria. Il contenuto crittografato può essere decrittografato da una chiamata successiva alla funzione RtlDecryptMemory .

Nota Questa funzione non ha alcuna libreria di importazione associata. Questa funzione è disponibile come risorsa denominata SystemFunction040 in Advapi32.dll. È necessario usare le funzioni LoadLibrary e GetProcAddress per collegare dinamicamente a Advapi32.dll.
 

Sintassi

NTSTATUS RtlEncryptMemory(
  [in, out] PVOID Memory,
  [in]      ULONG MemorySize,
  [in]      ULONG OptionFlags
);

Parametri

[in, out] Memory

Puntatore alla memoria da crittografare. Le dimensioni della memoria devono essere un multiplo della costante RTL_ENCRYPT_MEMORY_SIZE.

[in] MemorySize

Numero di byte a cui punti memoria . Il numero di byte deve essere un multiplo della costante RTL_ENCRYPT_MEMORY_SIZE.

[in] OptionFlags

Valore che specifica il funzionamento della crittografia sui limiti del processo e sulla rappresentazione. Questo parametro può avere uno dei valori seguenti. I valori sono reciprocamente esclusivi. È necessario specificare lo stesso flag durante la crittografia e la decrittografia della memoria.

Valore Significato
0
Crittografare e decrittografare la memoria nello stesso processo. Un'applicazione in esecuzione in un processo diverso non sarà in grado di decrittografare i dati.
RTL_ENCRYPT_OPTION_CROSS_PROCESS
Crittografare e decrittografare la memoria in processi diversi. Un'applicazione in esecuzione in un processo diverso sarà in grado di decrittografare i dati.
RTL_ENCRYPT_OPTION_SAME_LOGON
Usare le stesse credenziali di accesso per crittografare e decrittografare la memoria in processi diversi. Un'applicazione in esecuzione in un processo diverso sarà in grado di decrittografare i dati. Tuttavia, il processo deve essere eseguito come lo stesso utente che ha crittografato i dati e nella stessa sessione di accesso.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è STATUS_SUCCESS.

Se la funzione ha esito negativo, il valore restituito è un codice NTSTATUS che indica l'errore.

Requisiti

Requisito Valore
Client minimo supportato Windows XP, Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003, Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione ntsecapi.h
DLL Advapi32.dll