Condividi tramite


funzione WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE (wdfiotarget.h)

[Si applica solo a UMDF]

La funzione WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE inizializza la struttura di WDF_IO_TARGET_OPEN_PARAMS di un driver in modo che il driver possa aprire una destinazione di I/O specificando un nome file.

Sintassi

void WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE(
  [out]          PWDF_IO_TARGET_OPEN_PARAMS Params,
  [in, optional] PCUNICODE_STRING           FileName
);

Parametri

[out] Params

Puntatore a una struttura WDF_IO_TARGET_OPEN_PARAMS allocata dal driver, che la funzione inizializza.

[in, optional] FileName

Valore per il membro FileName della struttura WDF_IO_TARGET_OPEN_PARAMS . La maggior parte dei driver specifica qui NULL , a meno che la destinazione inferiore non supporti l'accesso allo spazio dei nomi dei dispositivi.

Valore restituito

nessuno

Osservazioni

La funzione WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE zero la struttura WDF_IO_TARGET_OPEN_PARAMS specificata e ne imposta il membro Size . Imposta anche il membro Type della struttura su WdfIoTargetOpenLocalTargetByFile e imposta il membro FileName se il driver fornisce un nome file.

Un driver può chiudere in modo esplicito la destinazione di I/O chiamando WdfIoTargetClose. Se il driver non chiude in modo esplicito la destinazione, il framework chiude automaticamente la destinazione quando il dispositivo viene rimosso (per impostazione predefinita una destinazione di I/O è padre del dispositivo).

Esempio

L'esempio di codice seguente illustra come un driver UMDF può aprire una destinazione locale con un oggetto file come descritto in WDF_IO_TARGET_OPEN_TYPE:

WDF_OBJECT_ATTRIBUTES  ioTargetAttrib;
WDFIOTARGET  ioTarget;
WDF_IO_TARGET_OPEN_PARAMS  openParams;

//
// Create target
//
WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&ioTargetAttrib, TARGET_DEVICE_INFO);
status = WdfIoTargetCreate(device, &ioTargetAttrib, &ioTarget);
if (!NT_SUCCESS(status)) {
    return status;
}

//
// Open target
//
WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE(&openParams, NULL);
status = WdfIoTargetOpen(ioTarget, &openParams);
if (!NT_SUCCESS(status)) {
    WdfObjectDelete(ioTarget);
    return status;
}

//
// create a request
//


//
// Format the request for the above target
//


//
// Send request to above target
//

Requisiti

Requisito Valore
Client minimo supportato Windows 8.1
Piattaforma di destinazione Universale
Versione UMDF minima 2,0
Intestazione wdfiotarget.h (include Wdf.h)
IRQL Qualsiasi livello

Vedi anche

WDF_IO_TARGET_OPEN_PARAMS

WDF_IO_TARGET_OPEN_TYPE