Función WdfDeviceRetrieveDeviceInterfaceString (wdfdevice.h)
[Se aplica a KMDF y UMDF]
El método WdfDeviceRetrieveDeviceInterfaceString recupera el nombre de vínculo simbólico que el sistema operativo asignó a una interfaz de dispositivo que el controlador registró para un dispositivo especificado.
Sintaxis
NTSTATUS WdfDeviceRetrieveDeviceInterfaceString(
[in] WDFDEVICE Device,
[in] const GUID *InterfaceClassGUID,
[in, optional] PCUNICODE_STRING ReferenceString,
[in] WDFSTRING String
);
Parámetros
[in] Device
Identificador de un objeto de dispositivo de marco.
[in] InterfaceClassGUID
Puntero a un GUID que identifica la clase de interfaz de dispositivo.
[in, optional] ReferenceString
Puntero a una estructura de UNICODE_STRING que describe una cadena de referencia para la interfaz del dispositivo. Este parámetro es opcional y puede ser NULL si el controlador no especificó una cadena de referencia cuando llamó a WdfDeviceCreateDeviceInterface.
[in] String
Identificador de un objeto de cadena de marco. El marco asignará la cadena Unicode del nombre de vínculo simbólico al objeto de cadena.
Valor devuelto
WdfDeviceRetrieveDeviceInterfaceString devuelve STATUS_SUCCESS si la operación se realiza correctamente. De lo contrario, el método podría devolver uno de los siguientes valores:
Código devuelto | Descripción |
---|---|
|
No se llamó a WdfDeviceRetrieveDeviceInterfaceString en IRQL = PASSIVE_LEVEL. |
|
Se especificó un parámetro no válido. |
|
WdfControlDeviceInitAllocate inicializó el objeto de dispositivo especificado. |
|
No se encontró una interfaz de dispositivo que coincida con el GUID especificado y la cadena de referencia. |
|
El controlador llamado WdfDeviceCreateDeviceInterface , pero el sistema aún no ha asignado un nombre de vínculo simbólico a la interfaz del dispositivo. |
WdfDeviceRetrieveDeviceInterfaceString también puede devolver otros valores NTSTATUS.
Se produce una comprobación de errores si el controlador proporciona un identificador de objeto no válido.
Comentarios
Para obtener más información sobre las interfaces de dispositivo, consulte Uso de interfaces de dispositivo.
Ejemplos
En el ejemplo de código siguiente se crea un objeto de cadena y, a continuación, se recupera el nombre de vínculo simbólico de una interfaz de dispositivo especificada.
NTSTATUS status;
WDFSTRING string;
status = WdfStringCreate(
NULL,
WDF_NO_OBJECT_ATTRIBUTES,
&string
);
if (NT_SUCCESS(status)) {
status = WdfDeviceRetrieveDeviceInterfaceString(
Device,
&GUID_DEVINTERFACE_DDI_TEST1,
NULL,
string
);
if (!NT_SUCCESS(status)) {
return status;
}
}
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.0 |
Versión mínima de UMDF | 2.0 |
Encabezado | wdfdevice.h (incluya Wdf.h) |
Library | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | PASSIVE_LEVEL |
Reglas de cumplimiento de DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |