| Previous | Next |
| ERROR_INVALID_MESSAGE | ERROR_INVALID_FLAGS |
ERROR_CAN_NOT_COMPLETE
cannot complete this function.
ERROR_CAN_NOT_COMPLETE means that windows could not finish the requested operation, but this code alone does not identify a narrower cause.
Where the result appears
- filesystem, device, shell, service, or legacy subsystem operations.
- wrapper APIs that collapse a more specific lower-level failure.
- operations interrupted by teardown, state changes, or unavailable dependencies.
- compatibility paths where the original subsystem exposes only a generic result.
Typical causes
- the target object changed state during the operation.
- a lower layer returned a failure that was not preserved by the caller.
- the operation is unsupported for the specific device, provider, or object type.
- required cleanup, synchronization, or prerequisite work could not finish.
What to collect
- exact API, parameters, target object, and the first failing layer.
- preceding warnings and lower-level status values before translation.
- object lifecycle, device/service state, and concurrent operations.
- whether the same request succeeds for another object or under a simpler configuration.
Handling and recovery
Do not build a retry loop around this generic code without identifying the changing condition. Instrument the boundary immediately below the API that reports it, and preserve native status, provider error, or device sense information. Recovery depends on that missing context.
Common misinterpretation
The message is intentionally broad. It should not be presented as proof of corruption, access denial, or temporary unavailability without corroborating evidence.
References
Looking for a different code? Search another status or error code.