Macro NdisMoveMemory (ndis.h)

A função NdisMoveMemory copia um número especificado de bytes de um local fornecido pelo chamador para outro.

Sintaxe

void NdisMoveMemory(
  [out]  Destination,
  [in]   Source,
  [in]   Length
);

Parâmetros

[out] Destination

Um ponteiro para um buffer de espaço do sistema que é o destino da movimentação. Esse buffer deve ter pelo menos bytes de comprimento.

[in] Source

Um ponteiro para um buffer de espaço do sistema do qual essa função copia os dados para o buffer de destino. Esse buffer deve ter pelo menos bytes de comprimento.

[in] Length

O número de bytes a serem copiados.

Retornar valor

Nenhum

Comentários

Origem e Destino são endereços virtuais.

Se qualquer um dos endereços estiver dentro de um intervalo de memória do dispositivo mapeado com NdisMMapIoSpace, um driver de miniporto deverá chamar um dos Ndis. Funções MappedMemory em vez de NdisMoveMemory.

O intervalo especificado por Source e Length não pode sobrepor o intervalo de Destino .

Os chamadores de NdisMoveMemory poderão ser executados em qualquer IRQL se a origem e o destino determinados forem residentes. Caso contrário, os chamadores deverão estar em execução no IRQL < DISPATCH_LEVEL, como, por exemplo, se um dos endereços estiver na pilha.

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte para drivers existentes no NDIS 6.0 e posterior, mas novos drivers devem usar RtlCopyMemory (não RtlMoveMemory).
Plataforma de Destino Área de Trabalho
Cabeçalho ndis.h (inclua Ndis.h)
IRQL Consulte a seção Comentários

Confira também

NdisAllocateMemoryWithTagPriority

NdisMMapIoSpace