I've made it work after some exploration.
Windows 7 ultimate 64bit desktop computer with WAIK and VmWare 7.1 Workstation installed
Plop Boot Manager (to boot virtual machine from USB)
Virtual machine with Windows Xp 32 bit (for partitioning USB, can be done in many other ways)
xpfildrvr1224_320 driver to see partitions on USB under XP
Software to partition USB, I've used Paragon Partition Manager™ 10.0 Server
Virtual machine with Ubuntu installed
GRUB, I've used GRUB2 for i wanted NTFS partition. Any other version works, but with FAT32.
Windows 7 installation disk (32 or 64 bit or both if you like it does not matter for this method, it can be AIO with all versions, what ever you want, works wit vista too)
soviet_direct_hooking_src.zip from http://www.911cd.net...showtopic=22795 (read the article too!)
Setup TEST virtual machine with Plop Boot Manager plpbt.iso used as CD/DVD connected at power on.
When booted this will display selection screen for booting from USB.
In Windows XP virtual machine:
Install Paragon Partition Manager™ 10.0 Server.
Install xpfildrvr1224_320 driver.
1) Extract the contents of “ xpfildrvr1224_320.zip” to a temp folder
2) Insert you USB pen drive that you want to turn into USB hard drive.
3) Right click on “my computer” -> properties -> hardware -> and click –> device manger;
Expand 'Disk drives', right click your USB drive, select Properties.
On the tab "Details" under XP the item "Device instance ID" is already selected.
Click on the ID in the list and press Ctrl+C, this copies the ID into the Windows Clipboard, now open notepad and paste the ID using Ctrl+V.
4) Now, go to the temp folder, and open the included INF file with notepad, and search for [cfadisk_device]
a. Now go to the notepad, where you’ve copied your USB ID, and copy the first part as shown under (see bold part)
Sample ID: USBSTOR\DISK&VEN_LEXAR&PROD_JUMPDRIVE&REV_1.30\K326441127040&0
b. Replace the bold part in following line with your USB ID that you’ve just copied in above step, and add under [cfadisk_device] heading:
%Microdrive_devdesc% = cfadisk_install,USBSTOR\DISK&VEN_LEXAR&PROD_JUMPDRIVE&REV_1.30
c. Save the file.
5) Open the device manager again right-click the USB drive, "Update driver...", then "No, not this time" -> Next -> "Install from a list or..." -> Next -> "Don't search." -> Next -> "Have Disk" -> browse to the INF file here. Now "RemovableToFixed" should be in the list -> Next -> Confirm the two warnings -> Finish.
Now the drive is redetected, as USB hard drive.
In Windows XP virtual machine:
Use Paragon Partition Manager (or whatever) to partition USB disk.
1)GRUB is on first partition so it is labeled GRUB in FAT32 format. 135 MB is more than enough for GRUB2.
You can use more space if you want (for files you need to be accessible on all machines)
(Partition label is important for Ubuntu commands.)
2)In this case Windows will be Windows 7 32 bit so my second partition label is Win7_32 in NTFS format.
Make partition on the rest of the free space, you will re size it latter in Paragon Partition Manager.
3) mark first, GRUB partition, as active
4)Start CMD and go to root of Windows install DVD (D:\boot)
cd boot (enter)
Type another command given below to update the USB drive with BOOTMGR compatible code.
Where “E” is your USB Win7_32 partition drive letter.
Once you enter the above command you will see a success message.
5)Copy all the files from Windows install disk to Win7_32 partition (do not re size yet)
THIS is most important step!
Without it you will get ERROR installing Windows saying: "A DVD/CD drive device driver is missing. If you have a driver CD/Floppy please insert it now..."
This is because Windows installation is OS for it self and it does not have driver that can use USB as hard drive (just like we had to install one in XP machine)
OS that installs Windows 7 is placed in \sources folder on installation DVD called boot .wim ("DVD:\sources\boot.wim).
We have to install the driver there.
1)Go to home OS (Windows 7 64bit with WAIK in my case) and copy D:\sources\boot.wim to a folder on your computer.
(E:\Live_Usb\MOD_WIMS\boot.wim in my case)
Go to start>>programs>>Microsoft Windows AIK and start "Deployment Tools Command Prompt" and execute:
imagex /mountrw E:\Live_Usb\MOD_WIMS\boot.wim 2 C:\mount
This will mount the image to C:\mount folder on the computer.
Do not close "Deployment Tools Command Prompt".
2)Extract soviet_direct_hooking_src.zip to a folder on your computer.
Rename dummydisk.sys to dummy.sys.
3)Start Notepad and paste following text in:
Windows Registry Editor Version 5.00
"DisplayName"="USB Mass Storage Filter Driver"
Click Save As and save it as dummy.reg in the same folder with dummy.sys
4)Run RegEdit select HCKY_LOCAL_MACHINE
go to File>Load Hive
select C:\mount\Windows\System32\config\SYSTEM and open it
when asked for Key Name input SYSTEMbla
Double click on dummy.reg and import it to registry.
Restart RegEdit , go to HCKY_LOCAL_MACHINE, select SYSTEMbla, then File>Unload Hive.
The SYSTEM hive in mounted boot image has been changed.
5)Copy dummy.sys to C:\mount\Windows\System32\drivers
6)Save changes to boot.wim by entering following command to "Deployment Tools Command Prompt":
imagex /unmount /commit C:\mount
7)copy E:\Live_Usb\MOD_WIMS\boot.wim to USB Win7_32 partition in sources directory and replace the old one.
To do this use XP Virtual machine (it can see the second partition on USB).
8)You can re size the USB Win7_32 partition now using Paragon Partition Manager (leave no free space, you do not need it no more).
You can also defragment the partition while you are at it.
To install GRUB2 on the first partition of USB:
1)Start Ubuntu virtual machine, attach USB to it, download latest GRUB2 and extract it on the desktop.
3)Check your USB device name using System>Administration>Disk Utility
It will be listed on the left side of the window, click on it and look on the right under Device: in my case it's /dev/sdb
2)Go to Aplications>Accessories>Terminal. This will start the window like CMD in Windows.
Enter the following commands:
sudo grub-install --root-directory=/media/GRUB /dev/sdb
GRUB is now installed.
3)Close Ubuntu vm. In home OS open Notepad and paste following text in:
color black/cyan yellow/cyan
title Install Windows 7 32bit
title Restart The Computer
Save it as in USB GRUB partition \boot\grub\menu.lst.
Plug USB in XP virtual machine again and mark boot.wim as read only to prevent adding registry changes to Windows PE registry
(it will be done in ram, and thus non persistent as it is on the install DVD).
It will also prevent disk fragmentation because all the files will only be read during the install.
Boot in test virtual machine and install.
Add other stuff to your USB and
Edited by ibach, 20 December 2010 - 09:02 AM.