Função FltGetVolumeFromFileObject (fltkernel.h)
A rotina FltGetVolumeFromFileObject retorna um ponteiro opaco para o volume no qual um determinado fluxo de arquivo reside.
Sintaxe
NTSTATUS FLTAPI FltGetVolumeFromFileObject(
[in] PFLT_FILTER Filter,
[in] PFILE_OBJECT FileObject,
[out] PFLT_VOLUME *RetVolume
);
Parâmetros
[in] Filter
Ponteiro de filtro opaco para o chamador. Esse parâmetro é necessário e não pode ser NULL.
[in] FileObject
Ponteiro de objeto de arquivo para um fluxo de arquivos que reside no volume.
[out] RetVolume
Ponteiro para uma variável alocada pelo chamador que recebe um ponteiro opaco para o volume. Esse parâmetro é necessário e não pode ser NULL.
Retornar valor
FltGetVolumeFromFileObject retorna STATUS_SUCCESS ou um valor NTSTATUS apropriado, como um dos seguintes:
Código de retorno | Descrição |
---|---|
|
O volume está sendo dividido. Este é um código de erro. |
|
Nenhum volume correspondente foi encontrado. Este é um código de erro. |
Comentários
FltGetVolumeFromFileObject adiciona uma referência de rundown ao ponteiro de volume opaco retornado no parâmetro RetVolume . Quando esse ponteiro não for mais necessário, o chamador deverá liberá-lo chamando FltObjectDereference. Portanto, cada chamada bem-sucedida para FltGetVolumeFromFileObject deve ser correspondida por uma chamada subsequente para FltObjectDereference.
Para obter um ponteiro para o objeto do dispositivo para um determinado volume, chame FltGetDeviceObject.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Cabeçalho | fltkernel.h (inclua Fltkernel.h) |
Biblioteca | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |