Compartir a través de


Función SerCxDeviceInitConfig (sercx.h)

El controlador de controlador serie llama al método SerCxDeviceInitConfig para adjuntar la extensión del marco de trabajo serie (SerCx) a la canalización de E/S para un objeto de dispositivo de marco (FDO o PDO) que está creando.

Sintaxis

NTSTATUS SerCxDeviceInitConfig(
  [in, out] PWDFDEVICE_INIT DeviceInit
);

Parámetros

[in, out] DeviceInit

Puntero a la estructura WDFDEVICE_INIT que se va a configurar.

Valor devuelto

SerCxDeviceInitConfig devuelve STATUS_SUCCESS si la llamada se realiza correctamente. Entre los posibles valores devueltos de error se incluyen el siguiente código de estado.

Código devuelto Descripción
STATUS_INSUFFICIENT_RESOURCES
No se pudieron asignar recursos del sistema (normalmente memoria).

Observaciones

Este método asocia la información de configuración de SerCx a la estructura de WDFDEVICE_INIT para el objeto de dispositivo de marco (PDO o FDO) que se va a crear. Llame a SerCxDeviceInitConfig antes de llamar al método WdfDeviceCreate para crear el objeto de dispositivo.

El controlador EvtDriverDeviceAdd función de devolución de llamada recibe un puntero a una estructura de WDFDEVICE_INIT inicializada como parámetro de entrada.

SerCx establece un descriptor de seguridad predeterminado que el controlador del controlador serie puede, si es necesario, invalidar. Por ejemplo, este descriptor de seguridad predeterminado permite que un controlador en modo de usuario envíe una solicitud de E/S a un dispositivo periférico conectado a un puerto en el controlador serie. Para cambiar esta configuración en el descriptor de seguridad, el controlador del controlador serie puede llamar al método WdfDeviceInitAssignSDDLString. Esta llamada debe producirse después de la llamada serCxDeviceInitConfig, pero antes de la llamada al método WdfDeviceCreate.

Ejemplos

En el ejemplo de código siguiente, la función de devolución de llamada evtDriverDeviceAdd controlador pasa una estructura de WDFDEVICE_INIT inicializada al método SerCxDeviceInitConfig. La llamada a SerCxDeviceInitConfig debe producirse antes de que el WdfDeviceCreate llamada que crea el FDO para el dispositivo de controlador serie (UART).

//
// FxDeviceInit is a pointer to an initialized WDFDEVICE_INIT structure.
// Drivers receive a pointer to this structure as an input parameter to an
// EvtDriverDeviceAdd callback function, or as a return value from the
// WdfControlDeviceInitAllocate method.
//

status = SerCxDeviceInitConfig(FxDeviceInit);

if (!NT_SUCCESS(status))
{
    return status;
}

// 
// Set WDF and SerCx device-level configuration options.
//

...

//
// Call the WdfDeviceCreate method.
//

...

Requisitos

Requisito Valor
cliente mínimo admitido Disponible a partir de Windows 8.
de la plataforma de destino de Universal
encabezado de sercx.h
irQL PASSIVE_LEVEL

Consulte también

EvtDriverDeviceAdd

WDFDEVICE_INIT

WdfDeviceCrear

WdfDeviceInitAssignSDDLString