次の方法で共有


RtlCopyMemory マクロ (ntddstor.h)

RtlCopyMemory ルーチンは、ソース メモリ ブロックの内容を宛先メモリ ブロックにコピーします。

構文

void RtlCopyMemory(
   Destination,
   Source,
   Length
);

パラメーター

Destination

データ型: void*。 バイトのコピー先のメモリ ブロックへのポインター。

Source

データ型: const void*。 バイトのコピー元となるソース メモリ ブロックへのポインター。

Length

データ型: size_t。 ソースからコピー先にコピーするバイト数。

戻り値

なし

解説

RtlCopyMemoryRtlMoveMemory よりも高速に実行されます。 ただし、 RtlCopyMemory では、 SourceLength で定義されているソース メモリ ブロックが、 DestinationLength で定義されている宛先メモリ ブロックと重ならないようにする必要があります。 これに対し、 RtlMoveMemory は、ソースメモリブロックと宛先メモリブロックが重なるケースを正しく処理します。

新しいドライバーでは、 RtlCopyBytes ではなく RtlCopyMemory ルーチンを使用 する必要があります。

RtlCopyMemory の呼び出し元は、ソースと宛先のメモリ ブロックが非ページ システム メモリ内にある場合、任意の IRQL で実行できます。 それ以外の場合、呼び出し元は IRQL <= APC_LEVELで実行されている必要があります。

要件

要件
Header ntddstor.h

こちらもご覧ください

RtlMoveMemory