You’ve been able to do this for a while by hand but now virt-sysprep & virt-customize ≥ 1.27.23 let you easily install firstboot scripts into Windows guests:
$ cat /tmp/test.bat echo Hello I am a batch file $ virt-customize -a win7.qcow2 --firstboot /tmp/test.bat
Next time the guest boots, check the log file in C:\Program Files\Red Hat\Firstboot\log.txt
This works well for me in Windows 7 guests. It ought to work in other Windows guests too. So far the only other Windows flavour I tested was W2K3 where the service crashed for some unfathomable reason (I’m not very patient with debugging Windows problems).
So let us know how it goes and we’ll try to fix the bugs as we go along.