¿Qué significa el código HRESULT 0x80040157 (REGDB_E_PACKAGEPOLICYVIOLATION)?

 
Anterior Siguiente
REGDB_E_BADTHREADINGMODEL CAT_E_CATIDNOEXIST

REGDB_E_PACKAGEPOLICYVIOLATION

Qué significa REGDB_E_PACKAGEPOLICYVIOLATION

REGDB_E_PACKAGEPOLICYVIOLATION corresponde al HRESULT 0x80040157. Windows indica: «Un registro dentro de un paquete infringe las directivas específicas de ese paquete.».

La causa se busca en registro de clases e interfaces COM en la base de registro. Para esta constante, Windows resume la condición como «Un registro dentro de un paquete infringe las directivas específicas de ese paquete.». Para esta constante, enlaza esa descripción con CLSID/IID, ProgID/TypeLib cuando aplique, vista de registro 32/64 bits, ruta del servidor y claves consultadas durante la resolución antes de modificar registro, objeto o datos.

Qué comprobar

  • Captura CLSID/IID, ProgID/TypeLib cuando aplique, vista de registro 32/64 bits, ruta del servidor y claves consultadas durante la resolución antes de cualquier retry, re-registro o reinicio del proceso.
  • Reproduce «Un registro dentro de un paquete infringe las directivas específicas de ese paquete.» en una operación mínima; después cambia una sola precondición para saber qué frontera se corrigió.

Tratamiento recomendado

Repara la entrada de registro exacta y su vista de arquitectura usando el instalador/registrador propietario. Luego valida CoCreateInstance/QueryInterface; copiar claves entre máquinas o vistas puede crear un estado incoherente.

Resultados cercanos que significan otra cosa

  • REGDB_E_INVALIDVALUE significa «El valor del Registro no es válido.».
  • REGDB_E_READREGDB corresponde a «No se pudo leer la clave del Registro.».

La reparación se valida repitiendo la misma llamada y confirmando que deja de cumplirse «Un registro dentro de un paquete infringe las directivas específicas de ese paquete.» sin introducir una conversión, registro o fallback distinto.

Referencias técnicas


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