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 de 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 do tipo WDF_TRI_STATE. Para obter mais informações sobre esse membro, consulte a seção Comentários a seguir.
FileObjectClass
Um valor de tipo WDF_FILEOBJECT_CLASS 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.
Comentários
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 encaminhará solicitações de criação de arquivo para o driver mais baixo se o driver não fornecer uma função de retorno de chamada EvtDeviceFileCreate 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 encaminhará solicitações de criação de arquivo se o driver fornecer uma função de retorno de chamada ou uma fila para lidar com as solicitações, portanto, o driver deverá encaminhar, concluir ou cancelar as solicitações.
- A estrutura envia a limpeza de arquivos e fecha as solicitações para o driver mais baixo depois de chamar as funções de retorno de chamada EvtFileCleanup e EvtFileClose do driver.
Se AutoForwardCleanupClose estiver definido como WdfUseDefault, a estrutura usará o comportamento WdfTrue para drivers de filtro e comportamento 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 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 como 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, independentemente de o driver fornecer ou não funções de retorno de chamada EvtFileCleanup e EvtFileClose .
- Se o driver definir AutoForwardCleanupClose como WdfFalse, o driver não deverá 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á as solicitações de limpeza e fechamento para o destino local, independentemente de o driver fornecer ou não funções de retorno de chamada EvtFileCleanup e EvtFileClose .
- Se o driver definir AutoForwardCleanupClose como 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) |