NdisMoveMemory 宏 (ndis.h)
NdisMoveMemory 函数将指定数量的字节从一个调用方提供的位置复制到另一个位置。
语法
void NdisMoveMemory(
[out] Destination,
[in] Source,
[in] Length
);
参数
[out] Destination
指向作为移动目标的系统空间缓冲区的指针。 此缓冲区的大小必须至少为 长度 字节。
[in] Source
指向系统空间缓冲区的指针,此函数从该缓冲区将数据复制到目标缓冲区。 此缓冲区的大小必须至少为 长度 字节。
[in] Length
要复制的字节数。
返回值
无
备注
源和目标都是虚拟地址。
如果任一地址都位于使用 NdisMMapIoSpace 映射的设备内存范围内,微型端口驱动程序应调用其中一个 Ndis。。MappedMemory 函数而不是 NdisMoveMemory。
源和长度指定的范围不能与目标范围重叠。
如果给定的源和目标是常驻的,NdisMoveMemory 的调用方可以在任何 IRQL 上运行。 否则,调用方必须在 IRQL < DISPATCH_LEVEL运行,例如,如果任一地址在堆栈上。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 支持 NDIS 6.0 及更高版本中的现有驱动程序,但新驱动程序应改用 RtlCopyMemory (而不是 RtlMoveMemory) 。 |
目标平台 | 桌面 |
标头 | ndis.h (包括 Ndis.h) |
IRQL | 请参阅“备注”部分 |