| Previous | Next |
| WCM_E_ATTRIBUTENOTALLOWED | WCM_E_INVALIDVALUEFORMAT |
WCM_E_INVALIDVALUE
WCM_E_INVALIDVALUE is the failure HRESULT 0x80220005 (signed decimal -2145255419, unsigned decimal 2149711877). Its severity bit is 1, facility is 34 (FACILITY_STATE_MANAGEMENT), and the facility-specific code field is 0x0005.
AllStat records the attached Windows SDK text as “Valie is invalid.” Microsoft’s SMI error table gives the corrected wording “Value is invalid.”
Exact meaning and contract boundary
The value is typed but unacceptable for the setting contract. The operation reached setting assignment or validation after the value has been parsed far enough to be evaluated. The first branch to test is whether the value is outside the component-defined domain even though its basic type is correct; keep that separate from the possibility that a list key or enum-like setting uses an unrecognized member.
Where the result appears
At this boundary, capture item path, WcmDataType, setting type, raw VARIANT type, and rendered value, then correlate it with restriction facets and any component-specific allowed-value metadata. Assign ownership only after checking target build, architecture, edition, language, and configuration pass.
Likely cause branches
- the value is outside the component-defined domain even though its basic type is correct
- a list key or enum-like setting uses an unrecognized member
- the value is incompatible with other settings in the same namespace
- a deployment file carries a value that was valid for another target edition or component version
Evidence that resolves the ambiguity
- item path, WcmDataType, setting type, raw VARIANT type, and rendered value
- restriction facets and any component-specific allowed-value metadata
- target build, architecture, edition, language, and configuration pass
- neighboring settings that may constrain this value
- the corrected official message “Value is invalid”; the attached AllStat header text contains the typo “Valie”
Diagnostic sequence
- read the data type and restrictions from the resolved ISettingsItem
- compare the submitted value with a known-good value from the same target schema
- validate dependent settings together rather than testing the scalar in isolation
- avoid coercing the value to a string merely to bypass typed validation
- regenerate the customization from target-matched metadata
Retry and recovery
Retry after changing the value or the settings context. An unchanged retry will repeat the same semantic rejection.
Difference from nearby WCM results
WCM_E_INVALIDVALUEFORMAT is lexical parsing failure; WCM_E_INVALIDDATATYPE is a type mismatch. INVALIDVALUE means parsing and basic typing were insufficient to make the value acceptable.
Practical scenario
A numeric policy setting accepts an integer VARIANT but permits only documented levels. Supplying an out-of-domain integer reaches semantic validation and returns this HRESULT.
Logging and engineering guidance
For operational telemetry, retain target build, architecture, edition, language, and configuration pass; also record neighboring settings that may constrain this value. Preserve a redacted summary of the corrected official message “Value is invalid”; the attached AllStat header text contains the typo “Valie”; use a cryptographic hash when that evidence is a file, stream, or generated artifact.
Official Microsoft references.
- Microsoft: SMI error and success constants.
- Microsoft: Settings Management Infrastructure API.
- Microsoft: SMI interfaces.
- Microsoft: WcmDataType.
- Microsoft: ISettingsItem::GetDataType.
Looking for a different code? Search another status or error code.