I'd like to automating deployment of test machines (all of which are naturally different). I have a half dozen boxes that need to be able to be brought up and torn down with frequency.
I could install them all with the right drivers, create disk images, then use an imaging tool to re-copy the entire disks, but that would mean a different image for each system, and images don't offer much flexibility. I'd rather quick format the boot partition and copy stuff over in BartPE. Then I'd have the the flexibility to only copy certain things here and there.
So, is there a simple way to copy the right folders on it from an existing installation and make it boot?
Virtualization isn't an option.
No, there's too much per-machine crap in the registry to be able to handle that. I'd look into doing unattended installs (google "Windows XP unattended install") of the machines, and seriously rethink your "virtualisation isn't an option" stance, since it really is the best option here.
I went through this with my previous employer, where there were a heap of test machines that had to be taken back to a known starting point before each test. The only thing that worked reliable and easily was the use of images. For each machine or configuration I made a boot CD or DVD. Each disc had a floppy boot image that would boot the machine and then fire up Drive Image, which is what I used to take the images. The only part I could never automate was getting Drive Image to start the restore. That perator had to manually select the image file and start it off but from there it's only a matter of 5 to 10 minutes before the machine is ready.
It was suggested a couple of times that we use virtual machines for the testing. That wasn't going to work for us because we had to be able to test with different hardware. The software being tested would sometimes be reported as not working properly with specific devices, mostly video cards.
This is so much easier with Vista and later ^^ Anyway, the tools beyond the OS yoo need to install automatically you'll have to package for unattended installation and apply with whatever deployment solution you end up using.
Look at Microsoft solutions like WDS (former RIS) and their solution accelerator MDT.