Rotina MRxExtendForNonCache

A rotina MRxExtendForNonCache é chamada pelo RDBSS para solicitar que um minidiretório de rede estenda um arquivo quando o arquivo não estiver sendo armazenado em cache pelo gerenciador de cache.

Sintaxe

PMRX_EXTENDFILE_CALLDOWN MRxExtendForNonCache;

ULONG MRxExtendForNonCache(
  _Inout_ PRX_CONTEXT    RxContext,
  _Inout_ PLARGE_INTEGER pNewFileSize,
  _Out_   PLARGE_INTEGER pNewAllocationSize
)
{ ... }

Parâmetros

RxContext [in, out]
Um ponteiro para a estrutura RX_CONTEXT. Esse parâmetro contém o IRP que está solicitando a operação.

pNewFileSize [in, out]
Um ponteiro para o valor LARGE_INTEGER indicando a contagem de bytes do novo tamanho do arquivo.

pNewAllocationSize [out]
Um ponteiro para o LARGE_INTEGER para armazenar o novo tamanho de alocação quando MRxExtendForCache retornar.

Retornar valor

MRxExtendForNonCache retorna STATUS_SUCCESS com êxito ou um código de erro em caso de falha.

Comentários

MRxExtendForNonCache manipula solicitações de rede para estender o arquivo para E/S não armazenado em cache.

Antes de chamar MRxExtendForNonCache, o RDBSS modifica os seguintes membros na estrutura RX_CONTEXT apontada pelo parâmetro RxContext :

LowIoContext.Operation é definido como LOWIO_OP_WRITE

LowIoContext.ParamsFor.ReadWrite.Flags tem o conjunto de bits LOWIO_READWRITEFLAG_EXTENDING_FILESIZE

Um minidiretório de rede que armazena em cache informações de arquivo ou diretório pode precisar invalidar suas informações de cache quando o arquivo for estendido.

Requisitos

Plataforma de destino

Área de Trabalho

parâmetro

Mrx.h (inclua Mrx.h)

Confira também

MRxAreFilesAliased

MRxCleanupFobx

MRxCloseSrvOpen

MRxCollapseOpen

MRxCreate

MRxDeallocateForFcb

MRxDeallocateForFobx

MRxExtendForCache

MRxFlush

MRxForceClosed

MRxIsLockRealizable

MRxShouldTryToCollapseThisOpen

MRxTruncate

MRxZeroExtend