¿Qué significa el código de error de Windows 6 (ERROR_INVALID_HANDLE)?

 
También puede significar:
ConstanteTipoSO
KERN_RESOURCE_SHORTAGERetorno del kernel de macOSmacOS
ippStsDivByZeroEstado de Intel IPPCualquiera
ENXIOerrnoCualquiera
INVALID_PROCESS_DETACH_ATTEMPTCódigo BSODWindows
Anterior Siguiente
ERROR_ACCESS_DENIED ERROR_ARENA_TRASHED

ERROR_INVALID_HANDLE

Qué significa ERROR_INVALID_HANDLE

ERROR_INVALID_HANDLE (6) significa que una API recibió un valor de handle que no identifica un objeto válido y compatible en el proceso actual. Las causas habituales son cierres dobles, campos sin inicializar, errores de ownership, handles caducados y uso del tipo de handle equivocado.

Cómo depurarlo

  • Siga el recorrido del handle desde su creación hasta cada transferencia, duplicación y cierre.
  • Inicialice las variables con el valor inválido documentado y restablézcalas después de cerrar el recurso.
  • Compruebe que el tipo de objeto asociado al handle coincide con la API que lo recibe.
  • Busque carreras en las que un hilo cierra el objeto mientras otro todavía intenta usarlo.

Prevención y recuperación

Asigne a cada handle un propietario claro; en C++ es preferible usar wrappers de vida ligada al scope. Reintentar con el mismo handle no tiene sentido: hay que corregir su ciclo de vida y, cuando proceda, volver a crear el objeto subyacente.

Referencias técnicas


¿Buscas un código diferente? Buscar otro código de estado o error.