vhdfix patches the parent path stored inside a classic VHD differencing disk. It is intended for cases where the parent VHD was moved and PowerShell Set-VHD cannot update the stored parent locator.
vhdfix
Set-VHD
Preview a change without writing:
dotnet run --project src\VHDPatchFix\VHDPatchFix.csproj -- --vhd "I:\B.vhd" --parent "I:\A.vhd" --dry-run
Patch the VHD and create the default .bak backup:
.bak
dotnet run --project src\VHDPatchFix\VHDPatchFix.csproj -- --vhd "I:\B.vhd" --parent "I:\A.vhd"
Verify after writing:
Get-VHD -Path "I:\A.vhd"
.vhd
.vhdx
dotnet build VHDPatchFix.sln -v minimal dotnet run --project src\VHDPatchFix\VHDPatchFix.csproj -- --help