función WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME (wdfiotarget.h)
[Se aplica a KMDF y UMDF]
La función WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME inicializa la estructura WDF_IO_TARGET_OPEN_PARAMS de un controlador para que el controlador pueda abrir un destino de E/S especificando el nombre del dispositivo, el archivo o la interfaz del dispositivo. Si el nombre proporcionado no existe, el sistema operativo intentará crearlo.
Sintaxis
void WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME(
[out] PWDF_IO_TARGET_OPEN_PARAMS Params,
[in] PCUNICODE_STRING TargetDeviceName,
[in] ACCESS_MASK DesiredAccess
);
Parámetros
[out] Params
Puntero a una estructura de WDF_IO_TARGET_OPEN_PARAMS asignada por el controlador, que inicializa la función.
[in] TargetDeviceName
Valor del miembro TargetDeviceName de la estructura WDF_IO_TARGET_OPEN_PARAMS .
[in] DesiredAccess
Valor del miembro DesiredAccess de la estructura WDF_IO_TARGET_OPEN_PARAMS .
Valor devuelto
None
Observaciones
Si TargetDeviceName especifica el nombre de un archivo que ya existe, el sistema reemplaza el archivo existente. Si el archivo no existe, el sistema lo crea.
La estructura WDF_IO_TARGET_OPEN_PARAMS se usa como entrada para el método WdfIoTargetOpen .
KMDF La función WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME inicializa los miembros Size, Type, TargetDeviceName, DesiredAccess y CreateOptions de la estructura de WDF_IO_TARGET_OPEN_PARAMS especificada.
UMDF La función WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME inicializa los miembros Size, Type, DesiredAccess y TargetDeviceName de la estructura de WDF_IO_TARGET_OPEN_PARAMS especificada. Establece el miembro de ShareAccess en cero. También establece el miembro FileAttributesen FILE_ATTRIBUTE_NORMAL.
Para obtener más información sobre los destinos de E/S, consulte Uso de destinos de E/S.
Ejemplos
En el ejemplo de código siguiente se crea un objeto de destino de E/S y se abre un destino especificando un nombre de archivo.
UNICODE_STRING fileName;
RtlInitUnicodeString(
&fileName,
(PCWSTR)PROTOCOL_INTERFACE_NAME
);
status = WdfIoTargetCreate(
Adapter->WdfDevice,
WDF_NO_OBJECT_ATTRIBUTES,
&Adapter->IoTarget
);
if (!NT_SUCCESS(status)) {
DEBUGP(MP_ERROR, ("WdfIoTargetCreate failed 0x%x\n", status));
return status;
}
WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME(
&openParams,
&fileName,
STANDARD_RIGHTS_ALL
);
status = WdfIoTargetOpen(
Adapter->IoTarget,
&openParams
);
if (!NT_SUCCESS(status)) {
DEBUGP(MP_ERROR, ("WdfIoTargetOpen failed 0x%x\n", 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 | wdfiotarget.h (incluya Wdf.h) |
IRQL | Cualquier nivel |
Consulte también
WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE