If you look hard enough on the web, you are bound to find something good. It might not be what you started with but the distraction is worth it. This time it is the official “unofficial” documentation from Microsoft for Windows 7 for VHD support. This is key information about how to program to the VHD subsystem which is built into Windows 7.
There is a great summary about Win7 VHD and here is the diagram from that section:
Don’t miss the actual API reference. Key in mind that Microsoft is allowed to change the API before shipping Windows 7 but after that it is set in stone. They have tried hard to match it up with the existing Windows API model so it should be very comfortable to most of you.
There are not that many API overall but some of them sound very promising. For example, there are APIs related to creating new VHDs, compacting existing ones, and merging child VHDs with parents. It also has the ability to grow VHDs apparently.
All this was brought to my attention by LeeL at work by referring me to an article about using the new VHD API with Windows 7. This article brings it all together and shows examples of how to use the new API. Things are moving along quickly with Windows 7 and the VHD support. It’s good to see this much focus being put on VHDs for the sake of better management and flexibility. The easier it is to manipulate, the easier it is to deploy and use.