| Previous | Next |
| hrInvalidParam | hrInvalidHandle |
hrError
Why this result matters
hrError means the Directory Service backup layer returned an internal failure without a more specific facility code.
The stored value is 0xC7FF0002 (facility-specific HRESULT). The legacy symbolic name comes from the Windows Directory Service backup/restore message header.
The first useful distinction is that the generic wrapper result is not sufficient evidence to classify storage corruption or network failure. Start by preserving the first API call, RPC status, Windows error, service event, context state, and any lower-level ESE result.
Do not confuse it with
This result specifically means that the generic wrapper result is not sufficient evidence to classify storage corruption or network failure. Related values below can appear in the same workflow but require a different response:
hrInvalidParam | a legacy Directory Service backup/restore call rejected one or more arguments before advancing its context |
|---|---|
hrRestoreInProgress | another restore context already owns the Directory Service restore workflow |
hrInvalidRecips | the recipient information supplied to the legacy backup operation failed validation |
Forensic checklist
- Code-specific observation: preserve the first API call, RPC status, Windows error, service event, context state, and any lower-level ESE result.
- Current open file: capture the value and timestamp from the first occurrence.
- RPC/Win32 status beneath the HRESULT: capture the value and timestamp from the first occurrence.
- Function and parameter values: capture the value and timestamp from the first occurrence.
- HBC creation and owner: capture the value and timestamp from the first occurrence.
Objects and state involved
| Diagnostic layer | the legacy Ntdsbcli HBC context and exact API call contract |
|---|---|
| Relevant API surface | DsBackupPrepare/OpenFile/Read/Close/End and DsRestorePrepare/Register/Complete/End |
| Code-specific condition | the Directory Service backup layer returned an internal failure without a more specific facility code |
| Narrow corrective direction | stop the sequence, collect the underlying diagnostics, and restart only from a newly prepared context |
Beginning with Windows Vista, Microsoft directs new implementations to VSS instead of these legacy functions. The HBC state advances across calls and must be released even when a later step fails.
Actions that can make diagnosis worse
- Do not continue after an invalid context or undefined output.
- Do not reuse an HBC after end, abort, or a fatal sequence error.
Validation after correction
- Record it,
0xC7FF0002, the API name, the current phase, and all live context or file owners. - Verify the condition by preserving the first API call, RPC status, Windows error, service event, context state, and any lower-level ESE result.
- Apply only the targeted fix: stop the sequence, collect the underlying diagnostics, and restart only from a newly prepared context.
Technical references
- AD backup error values — API ordering, file semantics, warning/error interpretation, or recovery behavior relevant to this HRESULT.
- AD backup walkthrough
- DsRestorePrepare contract
Looking for a different code? Search another status or error code.
