Função FltRequestFileInfoOnCreateCompletion (fltkernel.h)
Um minifiltro chama FltRequestFileInfoOnCreateCompletion durante a pré-criação do arquivo para solicitar que o sistema de arquivos armazene informações de arquivo para recuperação durante a pós-criação.
Sintaxe
NTSTATUS FLTAPI FltRequestFileInfoOnCreateCompletion(
PFLT_FILTER Filter,
PFLT_CALLBACK_DATA Data,
ULONG InfoClassFlags
);
Parâmetros
Filter
Ponteiro de filtro opaco que identifica exclusivamente o driver de minifiltro.
Data
Ponteiro para os dados de retorno de chamada FLT_CALLBACK_DATA que representam a operação de criação de E/S.
InfoClassFlags
Máscara de bits de sinalizador que indica o tipo de informação de arquivo que o sistema de arquivos deve armazenar para recuperação durante a pós-criação. Pode ser qualquer combinação dos seguintes sinalizadores:
Bandeira | Significado |
---|---|
QoCFileStatInformation (0x00000001) | Se definido, o sistema de arquivos armazenará informações de estatística de arquivo em uma estrutura QUERY_ON_CREATE_FILE_STAT_INFORMATION para recuperação. |
QoCFileLxInformation (0x00000002) | Se definido, o sistema de arquivos armazenará informações semelhantes ao Linux estendidas em uma estrutura QUERY_ON_CREATE_FILE_LX_INFORMATION para recuperação. |
QoCFileEaInformation (0x00000004) | Se definido, o sistema de arquivos armazenará atributos estendidos (EA) em uma estrutura QUERY_ON_CREATE_EA_INFORMATION para recuperação. |
QoCFileUsnInformation (0x00000008) | Se definido, o sistema de arquivos armazenará informações de USN em uma estrutura QUERY_ON_CREATE_USN_INFORMATION para recuperação. |
Valor de retorno
FltRequestFileInfoOnCreateCompletion pode retornar um dos seguintes valores:
Código de retorno | Descrição |
---|---|
STATUS_SUCCESS | O sistema de arquivos armazenou com êxito as informações de arquivo solicitadas. |
STATUS_INSUFFICIENT_RESOURCES | FltRequestFileInfoOnCreateCompletion não pôde alocar memória suficiente para armazenar as informações de arquivo solicitadas. |
STATUS_INVALID_PARAMETER_2 | O objeto de dados de retorno de chamada fornecido não era uma operação de criação baseada em IRP. |
Observações
O minifiltro pode recuperar as informações do arquivo chamando FltRetrieveFileInfoOnCreateCompletionEx ou FltRetrieveFileInfoOnCreateCompletion durante a pós-criação. Normalmente, o desempenho de um minifiltro é melhor quando solicita e recupera informações de arquivo dessa maneira, em vez de consultar informações de arquivo posteriormente.
Requisitos
Requisito | Valor |
---|---|
cabeçalho | fltkernel.h (inclua Fltkernel.h) |