Função MmFlushImageSection (ntifs.h)
A rotina MmFlushImageSection libera a seção de imagem de um arquivo.
Sintaxe
BOOLEAN MmFlushImageSection(
PSECTION_OBJECT_POINTERS SectionObjectPointer,
[in] MMFLUSH_TYPE FlushType
);
Parâmetros
SectionObjectPointer
Ponteiro para uma estrutura que contém os ponteiros do objeto de seção do objeto de arquivo.
[in] FlushType
Especifica o motivo da operação de liberação. Pode ser um dos valores listados na tabela a seguir.
Valor FlushType | Significado |
---|---|
MmFlushForDelete | O arquivo está sendo excluído. |
MmFlushForWrite | O arquivo está sendo aberto para acesso de gravação. |
Valor de retorno
MmFlushImageSection retorna VERDADEIRO se a operação de liberação for bem-sucedida ou se não houver nenhuma seção de imagem para o arquivo; caso contrário, MmFlushImageSection retornará FALSE .
Observações
Um sistema de arquivos deve chamar a rotina MmFlushImageSection antes de excluir um arquivo ou abrir um arquivo para acesso de gravação.
Antes de excluir um arquivo, o sistema de arquivos deve chamar MmFlushImageSection de sua rotina de expedição IRP_MJ_SET_INFORMATION ou IRP_MJ_CLEANUP, passando MmFlushForDelete para o parâmetro FlushType.
Ao abrir um arquivo para acesso de gravação, o sistema de arquivos deve chamar MmFlushImageSection de sua rotina de expedição IRP_MJ_CREATE, passando MmFlushForWrite para o parâmetro FlushType.
Se não houver exibições mapeadas da seção de imagem, MmFlushImageSection destruirá a seção de imagem e retornará as páginas usadas para a lista gratuita.
Antes de usar MmFlushImageSection, os gravadores do sistema de arquivos são fortemente incentivados a estudar a maneira como essa rotina é usada na amostra FASTFAT.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Universal |
cabeçalho | ntifs.h (inclua Ntifs.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |