The question title may need some editing, but here's the situation:
I'm in the process of writing a procedure to setup Windows PCs that will be sent to customers that buy equipment from us. As I go through this, many of these steps seem tedious ("Uncheck show window contents while dragging", "Change the background to the corporate background", etc.). I'd like to have some type of installer that takes care of setting up a system so that PCs leave our shop setup the exact same way, every time. I had thought about making a custom Windows installer, but then I would have to slipstream all of the drivers that came pre-installed on the HP or Dell computers that we use, and as the models change, I would have to keep creating new versions of the installer. My next thought was to make a software installer that programmatically changes all of those settings, but it seems that not everything can be changed programmatically (e.g. the picture used for the user's login).
For those of you who deploy PCs directly to customers, how do you ensure that all PCs leaving your shop are setup correctly? Do you have an automated process, or is everything done manually?
Edit: I understand your question a little better after your comment.
I'd probably do what you describe by putting a local group policy on the computer and running a one-time script to set settings that can't be managed by group policy. That will get you consistency and repeatability. You can also keep the script under revision control, should you need to replicate old configurations in the future (something you can't do with a checklist of items that get hand-applied).
We're going the thin-client route, but if I was to keep automating installations for workstation/systems, I would be regularly visiting the MSFN Unattended forums (for windows XP/2003/Vista/7 automated install info)
Lacking the infrastructure to do this kind of thing in group policies, et cetera, I have found that a good, old-fashioned pen and paper checklist is the easiest way to go, if not the quickest. Yeah, we image machines, but there are still always some manual tasks that have to be done. It works for fighter pilots, astronauts, and nuclear launch technicians- I'd say it's tested enough for sysadmins :)
+1 for the checklist. Get your checklist so detailed anyone could do it and then hire some local tech kids to come in and knock out a big stack at a time. I work for a college, so I have access to student workers that manage this for me. I would love to have an image, but we get a broad range of computers in so that would not work for us.
The Windows AIK (automated installation kit) is your friend here: http://www.microsoft.com/downloads/details.aspx?FamilyID=C7D4BC6D-15F3-4284-9123-679830D629F2&displaylang=en
Nice hardware independent PC images that you can easily keep up to date with drivers, settings and so on. There's a bit of a steep learning curve to it, but once you get going the benefits are enormous. Won't cost you anything either, and is exactly what's used by MS themselves (for Vista/Win7 installs) and most of the major PC vendors, so you can be sure it's tried and trusted. Also works perfectly with XP (just ask the 1500 machines using the images I built for them 3 years ago).
The best documentation to get you started is in the "Malware Removal Starter Kit": http://www.microsoft.com/downloads/details.aspx?familyid=6cd853ce-f349-4a18-a14f-c99b64adfbea&displaylang=en
If all these machines are going to be the same base image I'd create an image using Norton Ghost..Set up the image the way it should be...Use sysprep to add license keys, etc and then deploy the image on the machine, run updates, ship to user, profit..
I would update my image every other week or so to pull in patchs/updates so once I deploy the image there's not much to do..
It seems like I'm always reformatting my family's PC's for one reason or another. Here is what I've done to make that process more convenient for myself.
Save and apply Windows updates offline using Autopatcher Autopatcher http://www.altacracks.com/programas-gratis/prog_img/0/5000/5000/AutoPatcher-XP_1.png
Minus the applications that I can't figure out how to silently install, this process is 100% automated and installs on a wide variety of hardware.