Função FsRtlInsertPerFileObjectContext (ntifs.h)

Para um driver de filtro do sistema de arquivos "herdado", a função FsRtlInsertPerFileObjectContext associa informações de contexto a um objeto de arquivo.

Sintaxe

NTSTATUS FsRtlInsertPerFileObjectContext(
  [in] PFILE_OBJECT                  FileObject,
  [in] PFSRTL_PER_FILEOBJECT_CONTEXT Ptr
);

Parâmetros

[in] FileObject

Um ponteiro para o objeto de arquivo para o qual associar informações de contexto (fornecidas pelo parâmetro Ptr ).

[in] Ptr

Um ponteiro para uma estrutura de FSRTL_PER_FILEOBJECT_CONTEXT alocada pelo chamador e inicializada a ser associada ao FileObject. A estrutura pode ser usada como está ou inserida em uma estrutura de informações de contexto por objeto por objeto definida pelo driver. Para inicializar a estrutura, use a macro FsRtlInitPerFileObjectContext .

Retornar valor

FsRtlInsertPerFileObjectContext retorna um valor NTSTATUS apropriado, como um dos seguintes:

Código de retorno Descrição
STATUS_SUCCESS
A estrutura de informações de contexto foi associada com êxito ao objeto de arquivo.
STATUS_INVALID_PARAMETER
O parâmetro FileObject é NULL.
STATUS_INSUFFICIENT_RESOURCES
O sistema não tem recursos suficientes para concluir a operação. Por exemplo, não foi possível alocar uma extensão de objeto de arquivo para FileObject.

Comentários

Um driver de filtro do sistema de arquivos chama FsRtlInsertPerFileObjectContext para associar sua própria estrutura de contexto por objeto de arquivo a um objeto de arquivo. A estrutura de contexto contém informações de contexto que o driver de filtro mantém para o objeto de arquivo. A função FsRtlInsertPerStreamContext insere a estrutura de contexto Ptr na lista de contexto de FileObject.

Todas as estruturas de informações de contexto por objeto de arquivo devem ser ou conter uma estrutura de FSRTL_PER_FILEOBJECT_CONTEXT inicializada. Use a macro FsRtlInitPerFileObjectContext para inicializar uma estrutura de FSRTL_PER_FILEOBJECT_CONTEXT.

Depois que uma estrutura FSRTL_PER_FILEOBJECT_CONTEXT ou uma estrutura de contexto por objeto de arquivo definida por arquivo (contendo uma estrutura de FSRTL_PER_FILEOBJECT_CONTEXT inicializada) tiver sido associada a um objeto de arquivo, ela poderá ser recuperada chamando FsRtlLookupPerFileObjectContext ou removida chamando FsRtlRemovePerFileObjectContext.

Nota Os drivers de minifiltro do sistema de arquivos não devem usar as funções FsRtlXxxPerFileObjectContext . Em vez disso, os minifiltros podem usar as funções de contextoFltXxx para associar informações de contexto a um objeto de arquivo. Para obter uma lista completa, consulte o tópico FSRTL_PER_FILEOBJECT_CONTEXT .
 

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista
Plataforma de Destino Universal
Cabeçalho ntifs.h (inclua Fltkernel.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Confira também

FSRTL_PER_FILEOBJECT_CONTEXT

FsRtlInitPerFileObjectContext

FsRtlLookupPerFileObjectContext

FsRtlRemovePerFileObjectContext