| Previous | Next |
| COMQC_E_NO_IPERSISTSTREAM | COMQC_E_UNAUTHENTICATED |
COMQC_E_BAD_MESSAGE
COMQC_E_BAD_MESSAGE — 0x80110604
This code places the first failure in queued-component message integrity. Operationally, the listener received a queued-component message whose recording format is malformed, truncated, incompatible, or damaged.
Start with the failing layer
Queued Components cross several independent layers: call recording, MSMQ transport, message authentication, listener playback, and execution of the business method. Message ID, queue format name, original sender, any mover or requeuer, and the COM+ application version are the keys that join those layers without treating every queue symptom as the same fault.
Business-method failure happens after a message is decoded; this result means COM+ could not trust or interpret the recorded call.
Preserve before retrying
- Original MSMQ message ID, class, body size/hash, label, extension, and authentication fields
- Sender component/type-library version and listener version
- Dead-letter or exception queue routing and movement history
- First parser error in the COM+ listener before the message is retried or moved
Collect the smallest evidence set that identifies the attempt and object. Redact secrets and message contents; preserve hashes, IDs, policy values, versions, and state transitions instead.
Three useful comparisons
- Replay a preserved copy in an isolated queue without editing it.
- Send a known-good call from the same sender build to the same listener.
- Compare message body length and version fields across producer deployments.
A defensible fix
The corrective action should be narrow: Remove the incompatible producer, restore complete message transport, or provide a version-compatible listener; quarantine rather than endlessly retry poison messages.
Close the incident only when old and new supported senders replay correctly, malformed controls route to the configured exception path, and queue progress continues.
Technical references
Use these sources for the formal contract, then combine them with evidence from the returning application or service for this condition:
Looking for a different code? Search another status or error code.