| Anterior | Siguiente |
| MK_S_MONIKERALREADYREGISTERED | EVENT_S_NOSUBSCRIBERS |
EVENT_S_SOME_SUBSCRIBERS_FAILED
Qué significa EVENT_S_SOME_SUBSCRIBERS_FAILED
EVENT_S_SOME_SUBSCRIBERS_FAILED corresponde a 0x00040200. Es un código de éxito informativo: el evento alcanzó a parte de los suscriptores, pero no a todos.
Tratarlo como S_OK puro puede ocultar una entrega parcial. En un sistema con varios consumidores, repetir el evento completo sin saber quién ya lo procesó puede duplicar efectos en los suscriptores que sí tuvieron éxito.
Qué comprobar
- Registra la clase y el método del evento junto con el identificador de correlación de esa publicación.
- Conserva el HRESULT y la identidad de cada suscriptor invocado; el resultado agregado no dice cuál falló.
- Anota el orden de entrega y si existía una transacción o semántica idempotente alrededor de la llamada.
- Comprueba si el suscriptor defectuoso falla con el mismo payload de forma aislada antes de reenviar el evento a todos.
Cómo resolverlo
Repara los suscriptores que fallaron y reintenta sólo de acuerdo con la semántica de la aplicación. Si no existe deduplicación, no vuelvas a publicar ciegamente a todo el conjunto: los receptores que ya aceptaron el evento podrían procesarlo dos veces.
Diferencia crítica
EVENT_E_ALL_SUBSCRIBERS_FAILED significa que ninguno pudo ser invocado; aquí al menos uno sí recibió correctamente la publicación.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.