| Previous | Next |
| E_HDAUDIO_CONNECTION_LIST_NOT_SUPPORTED | E_HDAUDIO_NULL_LINKED_LIST_ENTRY |
E_HDAUDIO_NO_LOGICAL_DEVICES_CREATED
The scope of E_HDAUDIO_NO_LOGICAL_DEVICES_CREATED is HD Audio logical-device construction. HD Audio enumeration completed without successfully creating any logical audio subdevice. Keep 0x80660004 beside the returning method because a wrapper can replace this distinction with a generic subsystem message.
What the status establishes
When it is returned, creating no logical devices is an aggregate outcome reached after codec discovery. The root cause can precede endpoint registration by several stages: parsing widget routes, matching platform configuration, pairing topology and wave miniports, installing PortCls subdevices, or publishing device interfaces. The earliest rejected node or subdevice is more useful than the final zero count.
Inspect the following boundary: this is an aggregate outcome. Earlier failures can occur while parsing the codec, matching endpoints, installing PortCls subdevices, creating topology and WaveRT pairs, registering interfaces, or applying platform configuration.
Keep neighboring failures separate
Unlike the other E_HDAUDIO codes, this one does not identify a single malformed widget field; it says the enumeration produced zero usable logical devices. Do not focus on the final aggregate code while discarding the earlier, more specific creation error.
Build a useful incident record
| Record | Why it matters here |
|---|---|
| Every per-node or per-endpoint failure before the aggregate HRESULT | Preserving every per-node or per-endpoint failure before the aggregate HRESULT provides the evidence needed to test this distinction: unlike the other E_HDAUDIO codes, this one does not identify a single malformed widget field; it says the enumeration produced zero usable logical devices. |
| Codec topology, endpoint templates, and platform configuration | Recording codec topology, endpoint templates, and platform configuration separates the HD Audio logical-device construction boundary from a later wrapper symptom. |
| Subdevice creation and interface-registration results | In this result diagnostics, recording subdevice creation and interface-registration results ties the HRESULT to the HD Audio logical-device construction boundary rather than to the final visible failure. |
| Plug and Play start sequence and rollback actions | Comparing Plug and Play start sequence and rollback actions shows whether this result follows input, object state, or environment. |
Reduce the scenario safely
Instrument every candidate logical device with a stable identifier and a stage result., re-run enumeration with one endpoint definition at a time so a single malformed route cannot hide otherwise valid devices behind the aggregate failure.
- When it is returned, enable one minimal known-good render endpoint.
- Create topology and wave subdevices separately to locate the first failing half.
- compare inbox and vendor endpoint configuration.
- When it is returned, verify partial creations are rolled back before the next start attempt.
Interpret the controls
| Test | Interpretation | Hold constant |
|---|---|---|
| Same environment, reduced input | If this result disappears with a smaller faithful case, complexity within HD Audio logical-device construction is implicated. | Keep every per-node or per-endpoint failure before the aggregate HRESULT fixed while simplifying subdevice creation and interface-registration results. |
| Same input, fresh object generation | If this result changes after rebuilding state, examine ownership across the codec parser, miniport, PortCls subdevice builder, and endpoint-construction layer. | Place codec topology, endpoint templates, and platform configuration on the timeline of the last successful transition. |
| Same operation on a controlled second path | If this result follows one environment, the failure is not explained by source data alone. | Compare PnP instance, codec revision, driver package, power state, and logical-device generation while preserving Plug and Play start sequence and rollback actions. |
Prove the correction
A correction for it should let the operation at the HD Audio logical-device construction boundary complete repeatedly under the original supported conditions. Repeat the control that begins with “Enable one minimal known-good render endpoint” and confirm that the following lifecycle step also succeeds. Keep the original failing sample and one deliberate negative case so fallback cannot be mistaken for repair.
Technical references
When it is returned, these references define the public API family, object model, or error list used to interpret this status.
- Microsoft: COM error codes for Input and graphics.
- Microsoft: PortCls interfaces and structures.
- Microsoft: Windows audio driver design guide.
- Microsoft: hdaudio.h header reference.
- Microsoft: SysVAD virtual audio driver sample.
Looking for a different code? Search another status or error code.
