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) |