| Previous | Next |
| ERROR_VHD_INVALID_STATE | ERROR_VIRTDISK_DISK_ALREADY_OWNED |
ERROR_VIRTDISK_UNSUPPORTED_DISK_SECTOR_SIZE
Read the code at the owning storage layer: virtdisk unsupported disk sector size
ERROR_VIRTDISK_UNSUPPORTED_DISK_SECTOR_SIZE has unsigned value 0xC03A001D. In the virtdisk layer, the operation is rejected because the host storage sector geometry is not supported for the virtual disk format or requested attach/create operation. Diagnosis should follow Virtual Disk API provider, image format and host-disk state through one controlled state transition.
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.
Build a trustworthy incident record
| Storage diagnostic field | Value |
|---|---|
| Identity and generation | image path, VIRTUAL_STORAGE_TYPE, provider/vendor IDs, VHD/VHDX/VHD Set identifiers, host sector sizes, attach flags, ownership and online/read-only state |
| Narrow experiment | move a copy of the image between host disks with documented sector geometries and repeat the same create or attach operation |
| Closest comparison | ERROR_VIRTDISK_NOT_VIRTUAL_DISK |
| Owning object | Virtual Disk API provider, image format and host-disk state |
| Rejected invariant | the host storage sector geometry is not supported for the virtual disk format or requested attach/create operation |
Do not overwrite this result with a close, detach or rollback error. Preserve the causal order so the original storage contract remains visible.
Controlled comparison
- Associate this result with one caller, one transaction and one target UniqueId.
- Save the pre-call and post-call inventories, including image path, VIRTUAL_STORAGE_TYPE, provider/vendor IDs, VHD/VHDX/VHD Set identifiers, host sector sizes, attach flags, ownership and online/read-only state.
- Use this A/B case without touching unrelated storage: move a copy of the image between host disks with documented sector geometries and repeat the same create or attach operation.
- Validate both the HRESULT and the on-disk or provider state after the relevant reopen, remount or attach cycle.
The distinction from ERROR_VIRTDISK_NOT_VIRTUAL_DISK is operational. The host storage sector geometry is not supported for the virtual disk format or requested attach/create operation; log the neighboring code separately so capability, identity and state are not conflated.
Mechanism-specific note
Record logical and physical sector sizes for every layer: image format, host file system and physical disk. Alignment must be checked with integer arithmetic before truncation. Copying an image to a different device can change the host geometry even when the image bytes and virtual capacity remain identical.
Completion criteria
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. Keep the correction scoped to the owning object and avoid rewriting adjacent metadata merely to make the call return success.
- 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_DISKpath remains separately testable and separately logged.
Technical references
- Microsoft: Virtual Disk API — documents the supported management path relevant to this HRESULT.
- Microsoft: OpenVirtualDisk — defines the virtdisk objects used to interpret it.
- Microsoft: AttachVirtualDisk — primary API or object-model reference.
- Microsoft: GetVirtualDiskInformation — use this source to verify virtdisk state and parameters.
Looking for a different code? Search another status or error code.