Funzione SerCxDeviceInitConfig (sercx.h)

Il metodo SerCxDeviceInitConfig viene chiamato dal driver del controller seriale per collegare l'estensione del framework seriale (SerCx) alla pipeline di I/O per un oggetto dispositivo framework (FDO o PDO) che sta creando.

Sintassi

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

Parametri

[in, out] DeviceInit

Puntatore alla struttura WDFDEVICE_INIT da configurare.

Valore restituito

SerCxDeviceInitConfig restituisce STATUS_SUCCESS se la chiamata ha esito positivo. I valori restituiti di errore possibili includono il codice di stato seguente.

Codice restituito Descrizione
STATUS_INSUFFICIENT_RESOURCES
Impossibile allocare risorse di sistema (in genere memoria).

Commenti

Questo metodo associa le informazioni di configurazione di SerCx alla struttura di WDFDEVICE_INIT per l'oggetto dispositivo framework (PDO o FDO) che deve essere creato. Chiamare SerCxDeviceInitConfig prima di chiamare il metodo WdfDeviceCreate per creare l'oggetto dispositivo.

La funzione di callback EvtDriverDeviceAdd del driver controller riceve un puntatore a una struttura di WDFDEVICE_INIT inizializzata come parametro di input.

SerCx imposta un descrittore di sicurezza predefinito che il driver del controller seriale può, se necessario, eseguire l'override. Ad esempio, questo descrittore di sicurezza predefinito consente a un driver in modalità utente di inviare una richiesta di I/O a un dispositivo periferico connesso a una porta nel controller seriale. Per modificare questa impostazione nel descrittore di sicurezza, il driver del controller seriale può chiamare il metodo WdfDeviceInitAssignSDDLString . Questa chiamata deve essere eseguita dopo la chiamata SerCxDeviceInitConfig , ma prima della chiamata al metodo WdfDeviceCreate .

Esempio

Nell'esempio di codice seguente, la funzione di callback EvtDriverDeviceAdd di un driver controller passa una struttura di WDFDEVICE_INIT inizializzata al metodo SerCxDeviceInitConfig . La chiamata a SerCxDeviceInitConfig deve essere eseguita prima della chiamata WdfDeviceCreate che crea il fdO per il dispositivo controller seriale (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.
//

...

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 8.
Piattaforma di destinazione Universale
Intestazione sercx.h
IRQL PASSIVE_LEVEL

Vedi anche

EvtDriverDeviceAdd

WDFDEVICE_INIT

WdfDeviceCreate

WdfDeviceInitAssignSDDLString