Função WdfDeviceAddDependentUsageDeviceObject (wdfdevice.h)
[Aplica-se somente ao KMDF]
O método WdfDeviceAddDependentUsageDeviceObject indica que um dispositivo especificado depende de outro dispositivo quando o dispositivo especificado é usado para armazenar arquivos especiais.
Sintaxe
NTSTATUS WdfDeviceAddDependentUsageDeviceObject(
[in] WDFDEVICE Device,
[in] PDEVICE_OBJECT DependentDevice
);
Parâmetros
[in] Device
Um identificador para um objeto de dispositivo de estrutura.
[in] DependentDevice
Um ponteiro para uma estrutura de DEVICE_OBJECT fornecida pelo chamador que identifica um dispositivo do qual o Dispositivo depende.
Retornar valor
Se a operação for bem-sucedida, o método WdfDeviceAddDependentUsageDeviceObject retornará STATUS_SUCCESS. Os valores de retorno adicionais incluem:
Código de retorno | Descrição |
---|---|
|
DependentDevice é NULL. |
|
Falha na alocação de memória. |
O método pode retornar outros valores NTSTATUS.
Um bug marcar ocorrerá se o driver fornecer um identificador de objeto inválido.
Comentários
Seu driver pode chamar WdfDeviceAddDependentUsageDeviceObject para indicar que o dispositivo identificado pelo Dispositivo depende do dispositivo identificado por DependentDevice, quando o Dispositivo dá suporte a arquivos especiais. Se o driver chamar WdfDeviceAddDependentUsageDeviceObject, a estrutura chamará as funções de retorno de chamada EvtDeviceUsageNotification nos drivers de DependentDevice antes de chamar as funções de retorno de chamada EvtDeviceUsageNotification nos drivers do dispositivo.
Seu driver pode chamar WdfDeviceAddDependentUsageDeviceObject várias vezes para identificar vários dispositivos dos quais o Dispositivo depende para dar suporte a arquivos especiais.
Depois que um driver tiver chamado WdfDeviceAddDependentUsageDeviceObject, ele poderá chamar WdfDeviceRemoveDependentUsageDeviceObject para remover o dispositivo identificado por DependentDevice da lista de dispositivos dos quais o Dispositivo depende.
Para obter mais informações sobre arquivos especiais, consulte Suporte a arquivos especiais.
Exemplos
O exemplo de código a seguir adiciona um dispositivo (pDeviceObject) à lista de dispositivos dos quais outro dispositivo (Dispositivo) depende.
status = WdfDeviceAddDependentUsageDeviceObject(
device,
pDeviceObject
);
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1.0 |
Cabeçalho | wdfdevice.h (inclua Wdf.h) |
Biblioteca | Wdf01000.sys (consulte Controle de versão da biblioteca de estrutura.) |
IRQL | <= DISPATCH_LEVEL |
Regras de conformidade da DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |