Condividi tramite


Macro RtlCopyMemory (wdm.h)

La routine RtlCopyMemory copia il contenuto di un blocco di memoria di origine in un blocco di memoria di destinazione.

Sintassi

void RtlCopyMemory(
   void*       Destination,
   const void* Source,
   size_t      Length
);

Parametri

[out] Destination

Puntatore al blocco di memoria di destinazione in cui copiare i byte.

[in] Source

Puntatore al blocco di memoria di origine da cui copiare i byte.

[in] Length

Numero di byte da copiare dall'origine alla destinazione.

Valore restituito

nessuno

Osservazioni

RtlCopyMemory viene eseguito più velocemente di RtlMoveMemory. Tuttavia, RtlCopyMemory richiede che il blocco di memoria di origine, definito da Source e Length, non possa sovrapporsi al blocco di memoria di destinazione, definito da Destination e Length. RtlMoveMemory gestisce invece correttamente il caso in cui i blocchi di memoria di origine e di destinazione si sovrappongono.

I nuovi driver devono usare la routine RtlCopyMemory anziché RtlCopyBytes.

I chiamanti di RtlCopyMemory possono essere eseguiti in qualsiasi IRQL se i blocchi di memoria di origine e di destinazione si trovano nella memoria di sistema non in pagine. In caso contrario, il chiamante deve essere in esecuzione in IRQL <= APC_LEVEL.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtDll.dll (modalità utente); NtosKrnl.exe (modalità kernel)
IRQL Qualsiasi livello (vedere la sezione Osservazioni)

Vedi anche

RtlMoveMemory