tags:

views:

250

answers:

9

I'd like to continually test the installer for a DirectX game I wrote on a clean, bare bones, WindowsXP environment (meaning no .Net, no DirectX, no Visual Studio, no game, etc.) to ensure the installer is covering all bases. I only have one clean test machine to use for this. Since my installer still needs a lot of work and testing, it doesn't effectively uninstall everything and I don't feel like searching and manually removing left over files everytime. Is there a good way to clone/reproduce the clean state of the computer I'm using?

I looked into VMWare as a solution to create multiple instances of a clean WindowsXP environment, but its hardware emulation prevents my Graphics from rendering.

Any ideas? Thanks in advance for your help!

+3  A: 

Norton Ghost can reimage your pc.

or, here are some free alternatives: http://ghost.radified.com/ghost_alternatives.htm

deadcat
And I recommend to use a good computer with it, not the old generation PC from the graveyard. It make a big difference will creating the image and restoring it.
Hapkido
A: 

There are programs you can use that let you create "images" (or snapshots) of your system and save them to disk. You can later restore these "clean images" for your testing.

One such program is Ghost

C. Dragon 76
A: 

I thought the latest version of VMWare included (experimental) support for DirectX.

Failing that, you could set up something like the following

a) Test machine attempts to boot from the network as first boot device. If that works then

i) Network boot - test machine boots up, and copies partition 2 (your raw image) to partition 1. That should be easy to achieve,since neither partition will be mounted as root.

otherwise

ii) Test machine fails to boot from network, and reverts to booting from disk, i.e. partition 1. It runs the test, and signals another machine somewhere that it should provide a network boot image next time (and only next time) it is requested.

This lets you run a standard setup, repeatedly, without any user interaction, meaning you can have fully automated testing. The trouble with the disk imaging tools is they require some user interaction, at the very least to pop the DVD out of the drive so that the system will boot from the hard drive on the next run...

Airsource Ltd
+1  A: 

It is possible to boot Windows off a USB stick (Google for tips). I think you might be able to boot to the USB stick, run your game, then reflash with a clean image to restore.

Or, if your CPU has a VMX instruction (use CPU-Z), you can turn on certian optimizations in VirtualPC which may allow you to run DirctX (maybe).

Nick
A: 

You can use VMWare and create a base image. When you want a new, clean version you simply copy the VMWare folder of the base image, rename it, and connect to that image with the VMware Console.

VMWare server is the free version and you can run many OS's in the virtual environment.

EDIT

Sorry - didn't read the question properly!!

David Robbins
A: 

VMWare should cope - perhaps there's a problem with the way you're using directX?

There is also other virtualisation software available: virtualbox, qemu, etc that you could look into.

Draemon
+3  A: 

You can look into Windows Steady State here: http://www.microsoft.com/windows/products/winfamily/sharedaccess/default.mspx

It virtualizes all writes so that rebooting the machine restores it to the locked down state.

Basically, you would install XP and then Steady State. When you get to a point that you want to always start from, lock it down. Then you can do all the installations you want. You only need to restart the machine to get it back to its original state.

Steve Gibson talks about it in episode 129 of Security Now. You can download it here: http://www.grc.com/securitynow.htm

Jere.Jones
A: 

Windows Virtual PC

www.microsoft.com/windows/products/winfamily/virtualpc/default.mspx

Cesar
A: 

I use PING for backing up and restoring hard drive images. It's free, get it here - http://ping.windowsdream.com/ping.html

The ability to create a bootable DVD with the hard drive image on it is particularly useful.