It's basically a portable installation of Windows 8 running from a USB device. Each time the USB device is plugged into and booted on a new system it will detect new hardware, install drivers and will then allow access to Windows as normal. Any installed programs should be accessible as normal, however this is likely to depend on licensing and activation restrictions. The presentation at the BUILD conference indicates that this feature is aimed at enterprise customers only.
I'm not sure that the methods outlined below and existing instructions (e.g. Steve6375's tutorial) will, strictly speaking, create a true Windows To Go installation. The only official release of Windows To Go that I am aware of is the prebuilt Kingston USB 3.0 sticks released at the BUILD conference - I have more chance of being struck by lightning than getting my hands on one of those. According to the BUILD conference a Windows To Go session will not allow access to existing hard disks on the Host system, however in my own tests using the methods below (and Steve6375's tutorial) all drives were mounted.
Windows 8 appears to be a much more portable version of Windows than previous releases and (as other users have noted) will autodetect new hardware, install new drivers and then (hopefully) boot without issue if a standard (e.g. non-USB, internal) hard disk is moved to a new system. I would argue that all Windows 8 installations can therefore be used as a base for Windows To Go.
I have tested the same USB installation on three different systems and have not had any major issues. First boot on a new system takes a while as new hardware is detected, however subsequent boots are relatively quick. Windows appears relatively fast considering the potential USB 2.0 bottleneck on the systems I've tested it on.
I would personally recommend using a USB hard drive as opposed to a USB stick. Large USB sticks are expensive and might not work. Some reports indicate that a USB stick must show as a fixed disk to boot Windows To Go - I simply do not have the hardware required to test this.
Why VHD? Why not? I like using a container file as it's easy to backup or move. Copying the VHD file containing the installation is an easy method of backing up an operating system and does not require third party tools. In addition there is very little performance hit compared to a traditional hard disk installation. I also like the differential image features of Native Boot VHD.
Methods
There are several ways to create a VHD based Windows To Go.
Method 1 - Create and mount a VHD file on a USB drive using diskpart, apply install.wim to it (using either DISM or ImageX) and use bcdboot to create boot files. This method is adapted from Steve6375's tutorial (number 53 - see here).
Method 2 - Use an existing VHD file with Windows 8 already installed to it, copy it to a USB drive, mount it using diskpart, use bcdboot to create boot files on the USB drive and edit the registry to modify mounteddevices key (deleting all entries for the internal drive it was copied from to avoid pagefile issues).
Method 3 - Use windows 8 setup DVD (or USB). Prior to running the installer use the Repair your computer option and start a command prompt, create and mount a VHD file on a USB drive using diskpart, continue with setup and chose the mounted VHD file as the target disk when asked Where do you want to install Windows?.
Unfortunately the boot files (bootmgr and the BCD store, etc) are created on the active primary partition on the host system when using this method. To create boot files on the USB drive - after the installation has completed, boot to the windows 8 setup DVD (or USB) again, chose the Repair your computer option and start a command prompt, mount the VHD file and then use bcdboot to create the required boot files.
Method 3 - Walkthrough
This is a brief walkthrough of Method 3 (see above). These notes might be a bit vague (and rough) in parts - sorry. Tested with 32-bit Consumer Preview only.
I wanted to use as few tools as possible and tried to restrict myself to just using a Windows 8 Consumer Preview USB installer - I believe that this method best meets these requirements.
Quick note - the test system was as follows -
* Netbook with internal hard drive.
* USB external hard drive (VHD will be created here)
* USB stick (bootable - with Windows 8 CP setup files)
The netbook drive and external USB hard disk both had exisiting primary (active) partitions - empty and formatted as NTFS. These partitions can easily be created during the setup process if required.
PART 1 - Creating VHD Installation
Attached both USB devices and booted from the USB stick to start Windows 8 CP setup.
On the first Windows Setup screen I chose the relevant language and clicked on Next
On the next screen I choose the Repair your computer option, followed by Troubleshoot > Advanced Options > Command Prompt
Started Diskpart and checked the mount points for the drives - internal drive = C:, USB stick = D:, external USB drive = E:.
Created a (sparse) 20GB VHD file using the command
create vdisk file=E:\Win2go.vhd maximum=20480 type=expandable
Selected the newly created VHD file using the command
select vdisk file=E:\Win2go.vhd
Mounted the VHD file using the command
attach vdisk
Exited diskpart using command
exit
Started setup by using the command
D:\setup.exe
Clicked on Install Now
Entered product key DNJXJ-7XBW8-2378T-X22TX-BKG7J for 32-bit version.
Accepted Eula
Selected Custom: when asked Which type of installation do you want?
Chose the mounted VHD when asked Where do you want to install Windows? (Drive 3 Unallocated Space on my system) - ignoring the warning message stating that Windows can't be installed on this drive.
Waited for files to be copied, expanded, etc and completed setup.
Note - I checked to see which drive the pagefile had been created on. As it was already on the external USB drive I did not have to worry about editing the mounteddevices key.
PART 2 - Creating Boot Files on USB Drive
Attached both USB devices and booted from the USB stick to start Windows 8 CP setup (again).
On the first Windows Setup screen I clicked on Next
On the next screen I choose the Repair your computer option, followed by Troubleshoot > Advanced Options > Command Prompt
Started Diskpart and checked the mount points for the drives - internal drive = C:, USB stick = D:, external USB drive = E:.
Selected the VHD file using the command
select vdisk file=E:\Win2go.vhd
Mounted the VHD file using the command
attach vdisk
Checked the drive letter for the newly mounted VHD file - VHD drive = F:
Exited diskpart and ran the following command to create boot files
bcdboot F:\Windows /s E:
Restarted Diskpart and selected the VHD file using the command
select vdisk file=E:\Win2go.vhd
Unmounted the VHD file using the command
detach vdisk
Booted from the USB drive to test - everything worked fine.
Hope this is useful.
Regards,
Misty