Some windows update that got installed on my VHD-based Windows in week from 2011-06-12 to 2011-06-19 killed possibility to boot from them. Instead of normal startup procedure I was greeted with Repair Windows.
Fortunately I had another Windows installation on same machine so I was able to check boot parameters:
> bcdedit
Windows Boot Manager
--------------------
identifier {bootmgr}
device partition=D:
description Windows Boot Manager
locale en-US
inherit {globalsettings}
default {current}
resumeobject {fa179570-87b4-11e0-b0a7-da74dade416b}
displayorder {current}
{fa179565-87b4-11e0-b0a7-da74dade416b}
toolsdisplayorder {memdiag}
timeout 1
Windows Boot Loader
-------------------
identifier {current}
device partition=C:
path \Windows\system32\winload.exe
description Windows 7 (x64)
locale en-US
inherit {bootloadersettings}
recoverysequence {fa179566-87b4-11e0-b0a7-da74dade416b}
recoveryenabled Yes
osdevice partition=C:
systemroot \Windows
resumeobject {fa179564-87b4-11e0-b0a7-da74dade416b}
nx OptIn
Windows Boot Loader
-------------------
identifier {aa179565-87b4-11e0-b0a7-da74dade416b}
device partition=E:
path \Windows\system32\winload.exe
description My VHD installation
locale en-US
inherit {bootloadersettings}
recoverysequence {fa179572-87b4-11e0-b0a7-da74dade416b}
recoveryenabled Yes
osdevice partition=E:
systemroot \Windows
resumeobject {fa179570-87b4-11e0-b0a7-da74dade416b}
nx OptIn
There was my problem - somehow update has changed VHD boot device to nonexistent partition E:.
Solution lies in two commands:
> bcdedit /set "{aa179565-87b4-11e0-b0a7-da74dade416b}" device "vhd=[C:]\VHDs\Windows7.vhd"
The operation completed successfully.
> bcdedit /set "{aa179565-87b4-11e0-b0a7-da74dade416b}" osdevice "vhd=[C:]\VHDs\Windows7.vhd"
The operation completed successfully.
P.S. My best is that one of following updates is the killer: