Compartilhar via


função WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE (wdfiotarget.h)

[Aplica-se somente ao KMDF]

A função WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE inicializa a estrutura de WDF_IO_TARGET_OPEN_PARAMS de um driver para que o driver possa abrir um destino de E/S remoto especificando um objeto de dispositivo WDM (Modelo de Driver do Windows).

Sintaxe

void WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE(
  [out] PWDF_IO_TARGET_OPEN_PARAMS Params,
  [in]  PDEVICE_OBJECT             DeviceObject
);

Parâmetros

[out] Params

Um ponteiro para uma estrutura WDF_IO_TARGET_OPEN_PARAMS alocada por driver que a função inicializa.

[in] DeviceObject

Um ponteiro para uma estrutura DEVICE_OBJECT , que é usada como o valor para o membro DeviceObject da estrutura WDF_IO_TARGET_OPEN_PARAMS .

Retornar valor

Nenhum

Comentários

A estrutura WDF_IO_TARGET_OPEN_PARAMS é usada como entrada para o método WdfIoTargetOpen .

A função WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE inicializa os membros Size, Type e TargetDeviceObject da estrutura de WDF_IO_TARGET_OPEN_PARAMS especificada.

Normalmente, um driver define o membro TargetFileObject da estrutura WDF_IO_TARGET_OPEN_PARAMS depois que o driver chama WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE.

Para obter mais informações sobre destinos de E/S, consulte Usando destinos de E/S.

Exemplos

O exemplo de código a seguir cria um objeto de destino de E/S e abre o destino especificando uma estrutura DEVICE_OBJECT. O driver de exemplo obtém a estrutura DEVICE_OBJECT chamando NdisMGetDeviceProperty (não mostrado).

WDF_IO_TARGET_OPEN_PARAMS  openParams;
NTSTATUS  ntStatus;

ntStatus = WdfIoTargetCreate(
                             Adapter->WdfDevice,
                             WDF_NO_OBJECT_ATTRIBUTES,
                             &Adapter->IoTarget
                             );
if (!NT_SUCCESS(ntStatus)) {
    DEBUGP(MP_ERROR, ("WdfIoTargetCreate failed 0x%x\n", ntStatus));
    break;
}

WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE(
                                               &openParams,
                                               Adapter->NextDeviceObject
                                               );

ntStatus = WdfIoTargetOpen(Adapter->IoTarget,
                           &openParams);
if (!NT_SUCCESS(ntStatus)) {
    DEBUGP(MP_ERROR, ("WdfIoTargetOpen failed 0x%x\n", ntStatus));
    break;
}

Requisitos

Requisito Valor
Plataforma de Destino Universal
Versão mínima do KMDF 1.0
Cabeçalho wdfiotarget.h (inclua Wdf.h)
IRQL Qualquer nível

Confira também

WDF_IO_TARGET_OPEN_PARAMS

WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME

WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_NAME

WdfIoTargetOpen