I used to use a 'recovery card' which was a small PCI add-in card which would save any changes to the Windows XP partition at the end of the hard drive space. After rebooting, the changes were wiped. No additional software/drivers were necessary. However, I believe it only worked for FAT32 file systems, not NTFS. It worked great at the time, however. I could literally re-format the hard drive, reboot, and it was like it never happened.
If you search eBay for 'PCI recovery card', you can still find them available for sale.