Partilhar via


estrutura WDF_FILEOBJECT_CONFIG (wdfdevice.h)

[Aplica-se a KMDF e UMDF]

A estrutura WDF_FILEOBJECT_CONFIG contém informações de configuração de objetos de arquivo da estrutura de um driver.

Sintaxe

typedef struct _WDF_FILEOBJECT_CONFIG {
  ULONG                      Size;
  PFN_WDF_DEVICE_FILE_CREATE EvtDeviceFileCreate;
  PFN_WDF_FILE_CLOSE         EvtFileClose;
  PFN_WDF_FILE_CLEANUP       EvtFileCleanup;
  WDF_TRI_STATE              AutoForwardCleanupClose;
  WDF_FILEOBJECT_CLASS       FileObjectClass;
} WDF_FILEOBJECT_CONFIG, *PWDF_FILEOBJECT_CONFIG;

Membros

Size

O tamanho, em bytes, dessa estrutura.

EvtDeviceFileCreate

Um ponteiro para a função de retorno de chamada EvtDeviceFileCreate do driver ou NULL.

EvtFileClose

Um ponteiro para a função de retorno de chamada EvtFileClose do driver ou NULL.

EvtFileCleanup

Um ponteiro para a função de retorno de chamada EvtFileCleanup do driver ou NULL.

AutoForwardCleanupClose

Um valor WDF_TRI_STATEdigitado. Para obter mais informações sobre esse membro, consulte a seção Comentários a seguir.

FileObjectClass

Um valor WDF_FILEOBJECT_CLASSdigitado que identifica se o driver requer um objeto de arquivo de estrutura para representar cada arquivo que um aplicativo ou outro driver cria ou abre. Além disso, esse valor especifica onde a estrutura pode armazenar o identificador do objeto.

Observações

A estrutura WDF_FILEOBJECT_CONFIG é usada como entrada para o método WdfDeviceInitSetFileObjectConfig.

WDF_FILEOBJECT_CONFIG deve ser inicializado chamando WDF_FILEOBJECT_CONFIG_INIT.

Comportamento da Estrutura para AutoForwardCleanupClose

Se AutoForwardCleanupClose estiver definido como WdfTrue, a estrutura fará o seguinte:
  • A estrutura encaminha solicitações de criação de arquivo para o driver inferior seguinte se o driver não fornecer um EvtDeviceFileCreate função de retorno de chamada e não tiver chamado WdfDeviceConfigureRequestDispatching para definir uma fila de E/S para receber solicitações de criação de arquivo. A estrutura não encaminha solicitações de criação de arquivo se o driver fornece uma função de retorno de chamada ou uma fila para lidar com as solicitações, portanto, o driver deve encaminhar, concluirou cancelar as solicitações.
  • A estrutura envia a limpeza de arquivos e fecha solicitações para o driver mais baixo depois de chamar o do driver EvtFileCleanup e evtFileClose funções de retorno de chamada.
Se AutoForwardCleanupClose estiver definida como WdfFalse, a estrutura não encaminha solicitações de criação, limpeza ou fechamento de arquivos. Em vez disso, a estrutura conclui as solicitações para o driver.

Se AutoForwardCleanupClose estiver definido como WdfUseDefault, a estrutura usará comportamento de WdfTrue para drivers de filtro e comportamento de WdfFalse para drivers de função.

comportamento do driver para AutoForwardCleanupClose

O destino de E/S local do driver deve sempre receber um número igual de solicitações de E/S com tipos de solicitação de WdfRequestTypeCreate, WdfRequestTypeCleanup e WdfRequestTypeClose. Portanto, se o driver fornecer uma função de retorno de chamada EvtDeviceFileCreate ou uma fila de E/S que receba solicitações de criação de arquivo, você deverá usar as seguintes regras:
  • Se o driver definir AutoForwardCleanupClose para WdfTrue, o driver deverá encaminhar todas as solicitações de criação de arquivo para o destino de E/S local. Você deve seguir essa regra porque a estrutura encaminhará todas as solicitações de limpeza e fechamento para o destino local, se o driver fornece ou não evtFileCleanup e evtFileClose funções de retorno de chamada.
  • Se o driver definir AutoForwardCleanupClose para WdfFalse, o driver deverá não encaminhar solicitações de criação de arquivo para o destino de E/S local. Você deve seguir essa regra porque a estrutura não encaminhar a limpeza e fechar solicitações para o destino local, se o driver fornece ou não EvtFileCleanup e funções de retorno de chamada EvtFileClose.
  • Se o driver definir AutoForwardCleanupClose para WdfDefault, o driver deverá seguir a regra para WdfTrue se for um driver de filtro. O driver deve seguir a regra para WdfFalse se for um driver de função.

Requisitos

Requisito Valor
versão mínima do KMDF 1.0
versão mínima do UMDF 2.0
cabeçalho wdfdevice.h (inclua Wdf.h)