RtlMoveMemory マクロ (wdm.h)
RtlMoveMemory ルーチンは、ソース メモリ ブロックの内容を宛先メモリ ブロックにコピーし、重複するソース メモリ ブロックと宛先メモリ ブロックをサポートします。
構文
void RtlMoveMemory(
void* Destination,
const void* Source,
size_t Length
);
パラメーター
[out] Destination
バイトをコピーする宛先メモリ ブロックへのポインター。
[in] Source
バイトのコピー元となるソース メモリ ブロックへのポインター。
[in] Length
ソースからコピー先にコピーするバイト数。
戻り値
なし
解説
Source と Length で定義されるソース メモリ ブロックは、Destination とLength で定義されるターゲット メモリ ブロックと重複する可能性があります。
RtlCopyMemory ルーチンは RtlMoveMemory よりも高速に実行されますが、RtlCopyMemory では、ソースと宛先のメモリ ブロックが重複しないようにする必要があります。
RtlMoveMemory の呼び出し元は、ソースと宛先のメモリ ブロックが非ページ システム メモリにある場合、任意の IRQL で実行できます。 それ以外の場合、呼び出し元は IRQL <= APC_LEVELで実行されている必要があります。
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | 任意のレベル (「解説」セクションを参照) |
DDI コンプライアンス規則 | BufAfterReqCompletedIntIoctlA(kmdf), BufAfterReqCompletedIoctlA(kmdf), BufAfterReqCompletedReadA(kmdf), BufAfterReqCompletedWriteA(kmdf) |