What does HRESULT 0xC03A0014 (ERROR_VIRTDISK_PROVIDER_NOT_FOUND) mean?

 
Could be also:
ConstantTypeOS
STATUS_VIRTDISK_PROVIDER_NOT_FOUNDNTSTATUSWindows
Previous Next
ERROR_VHD_INVALID_FILE_SIZE ERROR_VIRTDISK_NOT_VIRTUAL_DISK

ERROR_VIRTDISK_PROVIDER_NOT_FOUND

Identify the owner before touching the layout: virtdisk provider not found

ERROR_VIRTDISK_PROVIDER_NOT_FOUND (0xC03A0014) is emitted by the virtdisk path when the Virtual Disk API cannot select a provider that recognizes the requested device type, vendor and image format. The deciding object is Virtual Disk API provider, image format and host-disk state, so the first investigation belongs there rather than in a generic “disk failure” bucket.

The Virtual Disk API chooses a format provider from VIRTUAL_STORAGE_TYPE, opens an image with explicit access rights and can attach it as a disk. Provider selection, backing-chain integrity, host-file attributes, sector geometry and operating-system ownership are independent validation stages.

Minimum diagnostic set

Storage diagnostic fieldValue
Closest comparisonERROR_VIRTDISK_NOT_VIRTUAL_DISK
Owning objectVirtual Disk API provider, image format and host-disk state
Rejected invariantthe Virtual Disk API cannot select a provider that recognizes the requested device type, vendor and image format
Identity and generationimage path, VIRTUAL_STORAGE_TYPE, provider/vendor IDs, VHD/VHDX/VHD Set identifiers, host sector sizes, attach flags, ownership and online/read-only state
Narrow experimentopen the same image with an explicit matching VIRTUAL_STORAGE_TYPE and with the original type/vendor tuple

Reproduce without destructive cleanup

  1. serialize the failing request and the enumeration from which its identifiers came.
  2. Preserve image path, VIRTUAL_STORAGE_TYPE, provider/vendor IDs, VHD/VHDX/VHD Set identifiers, host sector sizes, attach flags, ownership and online/read-only state while every handle is still valid.
  3. Repeat the operation using this controlled change: open the same image with an explicit matching VIRTUAL_STORAGE_TYPE and with the original type/vendor tuple.
  4. Close and reacquire the relevant objects, then run once more to test lifecycle correctness after this result.

ERROR_VIRTDISK_NOT_VIRTUAL_DISK describes a nearby but different storage condition; this result indicates that the Virtual Disk API cannot select a provider that recognizes the requested device type, vendor and image format.

Mechanism-specific note

Provider selection uses device type, vendor ID and image format. Capture the exact VIRTUAL_STORAGE_TYPE and whether the caller asked Windows to infer it. A filename extension is only a hint; renamed files, unsupported formats and an incorrect vendor tuple can all fail before image metadata is parsed.

Restore the contract

Correct the provider, image format, backing-file chain, host geometry or disk ownership identified by the failing call, then reopen the image to obtain a new handle before retrying. After correcting it, reopen the pack, volume, tier, snapshot or virtual disk so no cached generation participates in the validation run.

  • the first retry uses newly enumerated identifiers rather than cached handles.
  • The durable metadata or provider state agrees with the success returned after it.
  • A second run after close/reopen does not recreate the rejected condition.
  • the nearby ERROR_VIRTDISK_NOT_VIRTUAL_DISK path remains separately testable and separately logged.

Technical references


Looking for a different code? Search another status or error code.