Condividi tramite


Funzione WdfIoTargetCreate (wdfiotarget.h)

[Si applica a KMDF e UMDF]

Il metodo WdfIoTargetCreate crea una destinazione di I/O remota per un dispositivo specificato.

Sintassi

NTSTATUS WdfIoTargetCreate(
  [in]           WDFDEVICE              Device,
  [in, optional] PWDF_OBJECT_ATTRIBUTES IoTargetAttributes,
  [out]          WDFIOTARGET            *IoTarget
);

Parametri

[in] Device

Handle per un oggetto dispositivo framework.

[in, optional] IoTargetAttributes

Puntatore a una struttura di WDF_OBJECT_ATTRIBUTES allocata dal chiamante che specifica gli attributi dell'oggetto oggetto per l'oggetto di destinazione I/O. Questo parametro è facoltativo e può essere WDF_NO_OBJECT_ATTRIBUTES.

[out] IoTarget

Puntatore a una posizione che riceve un handle a un oggetto di destinazione di I/O.

Valore restituito

WdfIoTargetCreate restituisce STATUS_SUCCESS se l'operazione ha esito positivo. In caso contrario, questo metodo potrebbe restituire uno dei valori seguenti:

Codice restituito Descrizione
STATUS_INVALID_PARAMETER
È stato rilevato un parametro non valido.
STATUS_INSUFFICIENT_RESOURCES
Memoria insufficiente per creare un nuovo oggetto di destinazione di I/O.
STATUS_INVALID_DEVICE_REQUEST
Il membro ParentObject della struttura WDF_OBJECT_ATTRIBUTES specificata da IoTargetAttributes non specificava l'oggetto dispositivo framework specificato da Device o un oggetto la cui catena di genitori porta a tale oggetto.
 

Per un elenco di altri valori restituiti che possono essere restituiti da WdfIoTargetCreate, vedere Errori di creazione dell'oggetto Framework.

Questo metodo potrebbe restituire anche altri valori NTSTATUS.

Un controllo di bug si verifica se il driver fornisce un handle di oggetti non valido.

Commenti

Dopo che un driver chiama WdfIoTargetCreate, il driver deve chiamare WdfIoTargetOpen prima di poter inviare richieste alla destinazione di I/O remota.

Se il driver specifica un oggetto padre nel membro ParentObject della struttura di WDF_OBJECT_ATTRIBUTES, l'oggetto padre può essere un oggetto dispositivo framework o qualsiasi oggetto la cui catena di genitori porta a un oggetto dispositivo framework. Il framework eliminerà l'oggetto di destinazione I/O quando lo elimina (o il driver) elimina l'oggetto dispositivo.

Per altre informazioni su WdfIoTargetCreate, vedere Inizializzazione di una destinazione di I/O generale.

Se il driver fornisce funzioni di callback EvtCleanupCallback o EvtDestroyCallback per l'oggetto di destinazione I/O, si noti che il framework chiama queste funzioni di callback in IRQL = PASSIVE_LEVEL.

Per altre informazioni sulle destinazioni di I/O, vedere Uso delle destinazioni di I/O.

Esempio

Per un esempio di codice che usa WdfIoTargetCreate, vedere WdfIoTargetOpen.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Versione KMDF minima 1.0
Versione UMDF minima 2,0
Intestazione wdfiotarget.h (include Wdf.h)
Libreria Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL
Regole di conformità DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Vedi anche

WDF_OBJECT_ATTRIBUTES

WdfIoTargetOpen