i vote for option number 4... the RunOnceEX keys are dynamically created. Each Winnt.sif file as one line different form all the others, the batch file reads this, and deters to the proper entries. If you really want to get advanced..... you could just ahve one boot folder, but 3 different winnt.sif files, all named differently. As for the matter of unattended.....batch files are easy. Just call a different one, but what if you only wanted one. You would then have the change file generate a itself based on the CPU name. It should be easy enough. Each then has a preset of programs to install, and configure the setup. This is easiest done with a INF file. You call one section that then calls multiple ones. (I like making things complicated. It adds alittle bit more fun to it)