Поделиться через


Макрос RtlMoveMemory (wdm.h)

Подпрограмма RtlMoveMemory копирует содержимое исходного блока памяти в целевой блок памяти и поддерживает перекрывающиеся блоки исходной и целевой памяти.

Синтаксис

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

Параметры

[out] Destination

Указатель на целевой блок памяти, в который копируются байты.

[in] Source

Указатель на блок памяти источника для копирования байтов.

[in] Length

Число байтов для копирования из источника в место назначения.

Возвращаемое значение

None

Remarks

Блок исходной памяти, который определяется значениями Source и Length, может перекрывать блок памяти назначения, который определяется значениями Destination и Length.

Подпрограмма RtlCopyMemory выполняется быстрее, чем RtlMoveMemory, но для RtlCopyMemory требуется, чтобы исходный и целевой блоки памяти не перекрывались.

Вызывающие элементы RtlMoveMemory могут выполняться в любой среде IRQL, если исходный и целевой блоки памяти находятся в системной памяти без загрузки. В противном случае вызывающий объект должен работать в среде IRQL <= APC_LEVEL.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Любой уровень (см. раздел "Примечания")
Правила соответствия DDI BufAfterReqCompletedIntIoctlA(kmdf), BufAfterReqCompletedIoctlA(kmdf), BufAfterReqCompletedReadA(kmdf), BufAfterReqCompletedWriteA(kmdf)

См. также раздел

RtlCopyMemory