Errores de creación de objetos de marco

Cuando se produce un error en el intento de un controlador de crear un objeto de marco, el método de creación de objetos devuelve un valor NTSTATUS que indica el tipo de error.

Si el controlador especifica información no válida en una estructura de WDF_OBJECT_ATTRIBUTES , el marco puede devolver:

STATUS_WDF_OBJECT_ATTRIBUTES_INVALID
El controlador especificó un nombre de contexto de objeto, pero el tamaño del contexto es cero.

El controlador especificó un valor de invalidación de tamaño de contexto, pero no proporcionó una estructura WDF_OBJECT_CONTEXT_TYPE_INFO.

El controlador especificó un valor ContextSizeOverride en WDF_OBJECT_ATTRIBUTES que es menor que el miembro ContextSize de la estructura WDF_OBJECT_CONTEXT_TYPE_INFO.

El controlador especificó un valor ExecutionLevel en WDF_OBJECT_ATTRIBUTES que no está dentro del intervalo válido de valores.

El controlador especificó un valor SynchronizationScope en WDF_OBJECT_ATTRIBUTES que no está dentro del intervalo válido de valores.

STATUS_WDF_PARENT_ASSIGNMENT_NOT_ALLOWED
El controlador intentó asignar un elemento primario al objeto , pero el marco no permite a los controladores asignar elementos primarios al tipo de objeto.

STATUS_WDF_PARENT_ALREADY_ASSIGNED
El controlador intentó asignar un elemento primario a un objeto , pero un elemento primario ya está asignado al objeto .

STATUS_WDF_PARENT_IS_SELF
El controlador intentó convertir un objeto en su propio elemento primario.

STATUS_WDF_SYNCHRONIZATION_SCOPE_INVALID
El controlador especificó un valor con tipo WDF_SYNCHRONIZATION_SCOPE que no es válido para el tipo de objeto.

STATUS_WDF_EXECUTION_LEVEL_INVALID
El controlador especificó un valor con tipo WDF_EXECUTION_LEVEL que no es válido para el tipo de objeto.

Si el miembro Size de cualquier estructura definida por el marco no coincide con el tamaño real de la estructura, el marco puede devolver STATUS_INFO_LENGTH_MISMATCH.

Si el marco no puede asignar memoria para el nuevo objeto, puede devolver STATUS_INSUFFICIENT_RESOURCES.

Los métodos de creación de objetos individuales también pueden devolver valores NTSTATUS adicionales. Para obtener más información sobre los valores devueltos adicionales de cada método de creación, consulte la página de referencia del método.