You can do everything told in this tutorial on a virtual machine, in fact I recommend it. It has many advantages. You might for instance have a fully working Windows 7 setup, no need for reinstall at the moment, but creating a customized image for future reinstallation on a virtual machine is fast and makes reinstall when needed a piece of cake. Restoring a system image with your software already preinstalled is usually faster than doing a clean install with no additional software, making your Windows personal and customized from the first boot to desktop.
In Part 11. we will generalize the image (see Part 11. for further explanation), removing all hardware related information and drivers from the image so that it can be used later on any hardware capable of running Windows 7, not only on your own machine. This, of course, requires a valid product key for Windows and each program on image for each computer you use the image to install Windows.
You can use any virtualization platform (Virtual PC, VirtualBox, VMware, Parallels) on any operating system (Windows, Linux, Mac) for following this tutorial to create a customized Windows 7 System Image. See for instance this tutorial for installing Windows 7 on Virtual PC:
Windows Virtual PC - Create Virtual Machine. Create the image on a Windows 7 virtual machine running on a Linux Mint machine on a VirtualBox virtual machine, save the image on a stick and take it with you when visiting that Apple fan boy cousin of yours and install Windows 7 from your image to a Parallels virtual machine running on his Mac.
Notice that you can only install 32 guests on Windows Virtual PC, regardless if the host system is 32 or 64 bit. In order to create a 64 bit Windows guest vm on Windows 7 host you need to use third party virtualization programs. Two most common and well known free alternatives are VMWare Player and Oracle VirtualBox, both free to download and use.
This tutorial, the process itself, screenshots and videos were made on a Hyper-V Windows 7 virtual machine running on a Windows 8.1 Pro HP Envy 17 laptop. The vm was given 2GB of RAM, two virtual hard disks (100GB and 500GB) and two virtual CD/DVD drives.