| Previous | Next |
| NS_E_WMP_BMP_TOPDOWN_DIB_UNSUPPORTED | NS_E_WMP_BMP_COMPRESSION_UNSUPPORTED |
NS_E_WMP_BMP_BITMAP_NOT_CREATED
Where the Player stopped
NS_E_WMP_BMP_BITMAP_NOT_CREATED is HRESULT 0xC00D1030. It means the image parsed far enough to request a Windows bitmap but bitmap allocation or creation failed; the result belongs to the skin artwork decoder and raster-file contract, not to an unspecified Player failure.
An additional test is to record decoded dimensions, stride, bit depth, requested allocation and underlying GDI error; that evidence is more useful than reinstalling the Player or changing several unrelated settings at once.
Why the producing component matters
Before changing state, remember that a filename extension is not sufficient evidence of image format; the decoder acts on signatures, headers, markers, chunks and decoded dimensions. A second platform rule is that a file can be valid according to a modern format specification yet use a coding option that the legacy WMP skin decoder does not implement.
Representative case: Header fields imply an enormous surface even though the compressed file is small.
How to prove the condition
- Preserve
0xC00D1030, the ErrorItem context and the object instance involved in the failing operation. - Confirm the failure directly: record decoded dimensions, stride, bit depth, requested allocation and underlying GDI error.
- After you reduce invalid/excessive dimensions or resolve the actual allocation/GDI failure, recreate the owning WMP object and verify that the corrected generation completes.
Minimum useful incident record
Capture state before Player cleanup:
- What to verify: record decoded dimensions, stride, bit depth, requested allocation and underlying GDI error.
- Artifact: format header fields, dimensions, bit depth and color model.
- State: first invalid marker/chunk and its byte offset.
- Object identity: decoder-supported coding mode versus the file’s declared mode.
- Underlying evidence: standalone decode result outside the skin package using the same bytes.
- Correlation: archive member name, byte length, hash and file signature.
Targeted fix
Change the responsible precondition rather than masking the symptom: reduce invalid/excessive dimensions or resolve the actual allocation/GDI failure.
- Avoid changing only the extension or MIME type while leaving the encoded bytes unchanged; it can destroy the artifact or state needed to explain this result.
- Avoid repeatedly recompressing the sole source image without retaining an original and a decoded pixel comparison; that can replace the original HRESULT with a secondary failure from another layer.
Neighboring codes to separate
| Result | Different condition |
|---|---|
NS_E_WMP_BMP_COMPRESSION_UNSUPPORTED | The BMP header selects a compression mode unsupported by the WMP skin decoder |
NS_E_WMP_BMP_TOPDOWN_DIB_UNSUPPORTED | The BMP is a top-down DIB representation unsupported by this WMP path |
NS_E_WMP_BMP_INVALID_BITMASK | The BMP channel masks are inconsistent with the declared bit depth or compression mode |
If this result is followed by a broader “cannot play,” “cannot load,” or “operation failed” result, preserve the earlier event. The later code can be a consequence from a wrapper, fallback item or UI layer rather than the producing failure.
Completion criteria
Keep one fixture that reproduces 0xC00D1030 and one corrected fixture that changes only the identified precondition.
Technical references
- Skin files and image resources — API or format context.
- BITMAPINFOHEADER structure — documentation for this result.
- Windows Media Player skins — normative or platform material relevant to this result.
Looking for a different code? Search another status or error code.
