Share via


NdisMoveMemory (NDIS 5.1) function

Note   NDIS 5. x has been deprecated and is superseded by NDIS 6. x. For new NDIS driver development, see Network Drivers Starting with Windows Vista. For information about porting NDIS 5. x drivers to NDIS 6. x, see Porting NDIS 5.x Drivers to NDIS 6.0.

NdisMoveMemory copies a specified number of bytes from one caller-supplied location to another.

Syntax

VOID NdisMoveMemory(
  _Out_ PVOID Destination,
  _In_  PVOID Source,
  _In_  ULONG Length
);

Parameters

  • Destination [out]
    Pointer to a system-space buffer that is the destination of the move. This buffer must be at least Length bytes in size.

  • Source [in]
    Pointer to a system-space buffer from which this function copies the data to the destination buffer. This buffer must be at least Length bytes in size.

  • Length [in]
    Specifies the number of bytes to copy.

Return value

None

Remarks

Both Source and Destination are virtual addresses.

If either address falls within a range of device memory that was mapped with NdisMMapIoSpace, a NIC driver should call one of the Ndis..MappedMemory functions instead of NdisMoveMemory.

The range specified by Source and Length cannot overlap the Destination range.

Callers of NdisMoveMemory can run at any IRQL if the given Source and Destination are resident. Otherwise, callers must be running at IRQL < DISPATCH_LEVEL, as, for example if either address is on the stack.

Requirements

Target platform

Desktop

Version

See NdisMoveMemory.

Header

Ndis.h (include Ndis.h)

IRQL

See Remarks section.

See also

NdisAllocateMemoryWithTag

NdisMMapIoSpace

NdisMoveFromMappedMemory

NdisMoveMappedMemory

NdisMoveToMappedMemory

 

 

Send comments about this topic to Microsoft