You are on page 1of 21

Si, ests leyendo bien.

En ste post explicar como se instala windows EN un disco extrable


(USB) o en un pendrive.
Habitualmente cuando buscamos sta informacin lo que encontramos es "Instalar Windows
DESDE un pendrive", que es algo bueno, pero no es lo mismo.
Para que sirve sto. Por ejemplo en mi pas (Uruguay), lo uso para instalarselo a los
chiquilines que tienen las Magallanes que les entrega el estado. Son excelentes como vienen
con Ubuntu, pero como todos estn acostumbrados a Windows quieren ponerlo y ya es
pblico como hacerlo, estn los drivers, etc. Pero al hacerlo pierden Ubuntu y las mquinas
tienen una SD que funciona como disco duro (un sandisk), que es de 8 gb, por lo que el
espacio es chico. De sta forma, con una SD card de 4 gb o un pendrive. Se les pone
Windows sin afectar Ubuntu. Lo nico que se toquetea es el orden de booteo para que la SD
est antes que el sandisk.
Bueno, ahora vayamos al grano.
Requerimientos :
Una instalacin de Windows
Un disco USB2 o un Stick USB2 lo suficientemente grande 4gb.
Windows XP CD.
WinISO (o cualquier software que permita edicin directa de archivos ISO)
Microsoft CAB SDK
Software que grabe formato ISO en Cds.
Vamos a hacer una imgen del CD de WinXP, extraeremos algunos archivos de la imgen
usando el editor de ISOs. Editaremos estos archivos y los volveremos a meter en el ISO una
vez modificados. La imgen resultante la quemamos en otro CD, y ya puede ser usada para
instalar directamente en un dispositivo USB. Suena fcil eh. bueno vamos all.

1) Soporta tu pc el arranque desde USB?


Usualmente esto es una opcin en la secuencia de arranque del BIOS. Si no la ves, actualiza
tu BIOS. Si no ests seguro, no sabes lo suficiente y vas a meter la pata

2) Descubriendo si tu USB-Drive arranca.


Conecta tu USB drive al ordenador, directamente al puerto, sin Hub. Apaga el pc, desconecta
todos los discos duros, pon un CD booteable de XP, comienza a instalar y ve hasta la parte
donde seleccionas el disco donde quieres instalar. Si la instalacin pasa de la parte donde has
de seleccionar la particion. Tu USB sirve para arrancar XP. De lo contrario te dar un error de
"Windows no pudo encontrar, su disco, particin, datos, etc.. bla , bla. Esto no es problema, lo
nico que hay que hacer es formatear el drive USB. Arrancar con el windows normalmente,
buscas esta herramienta de HP , y usarla para formatear el stick o disco usb completamente
en formato NTFS.
3) Haciendo la imgen del disco de XP.
Fcil. Abre WinISO, vete a Actions-> Make ISO from CDROM, y guarda la imgen de CD. Ya
est.
4) Extrayendo los archivos necesarios
Una vez tenemos la imgen, la cargamos en WinISO. Vamos a la carpeta i386, seleccionamos
los archivos siguientes :
TXTSETUP.SIF
DOSNET.INF
USB.IN_
USBPORT.IN_
USBSTOR.IN_
Vamos a Actions -> Extract y los ponemos en una carpeta aparte para trabajar con ellos.

5) Desempaquetando los archivos IN_


De la linea de comando usamos el Cab SDK.
cabarc x USBSTOR.IN_
cabarc x USB.IN_
cabarc x USBPORT.IN_
y nos quedaran los 3 unpacked :

usb.inf
usbport.inf
usbstor.inf
ok ahora borramos los .IN_
del *.in_
6) Editando los archivos.

Bien este es paso principal. Usaremos un editor de texto simple como Notepad .
6-A) TXTSETUP.SIF
Este archivo es cargado en el paso inicial de la instalacin. Aqui cambiaremos la forma en que
windows trata los dispositivos USB durante el arranque del sistema. Por defecto son tratados
como dispositivos de entrada (input devices) durante la instalacin. Lo cambiaremos para que
los incluya como dispositivos de almacenamiento (mass storage driver) que por tanto necesita
ser cargado antes por el instalador para que funcione la cosa.
Primero, movemos la entrada siguiente desde [InputDevicesSupport.Load] hacia la
seccin[BootBusExtenders.Load]
[BootBusExtenders.Load]
pci = pci.sys
acpi = acpi.sys
isapnp = isapnp.sys
acpiec = acpiec.sys
ohci1394 = ohci1394.sys
usbehci = usbehci.sys
usbohci = usbohci.sys
usbuhci = usbuhci.sys
usbhub = usbhub.sys
usbstor = usbstor.sys

[InputDevicesSupport.Load]

usbehci = usbehci.sys
usbohci = usbohci.sys
usbuhci = usbuhci.sys
usbhub = usbhub.sys
usbccgp = usbccgp.sys
hidusb = hidusb.sys
****** = ******.sys
serenum = serenum.sys
usbstor = usbstor.sys

... ahora lo mismo para [BootBusExtenders] y [InputDevicesSupport]


[BootBusExtenders]
pci = "PCI-Bustreiber",files.pci,pci
acpi = "ACPI Plug & Play-Bustreiber",files.acpi,acpi
isapnp = "ISA Plug & Play-Bustreiber",files.isapnp,isapnp
acpiec = "Integrierter ACPI-Controllertreiber",files.none,acpiec
ohci1394 = "IEEE-1394-Bus-OHCI-konformer Anschlusstreiber",files.ohci1394,ohci1394
usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehci
usbohci = "Open Hostcontroller",files.usbohci,usbohci
usbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhci
usbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhub
usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor

[InputDevicesSupport]
usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehci
usbohci = "Open Hostcontroller",files.usbohci,usbohci
usbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhci
usbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhub
hidusb = "HID-Parser",files.hidusb,hidusb
****** = "Treiber f?r seriellen Anschluss",files.none,******
serenum = "Enumerator f?r seriellen Anschluss",files.none,serenum
usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor
usbccgp = "USB Generic Parent Driver",files.usbccgp,usbccgp

Luego escribimos algunos keys en el registro.


Inserta lo siguiente en la seccin [HiveInfs.Fresh] :
[HiveInfs.Fresh]
AddReg = hivedef.inf,AddReg
AddReg = hivesys.inf,AddReg
AddReg = hivesft.inf,AddReg
AddReg = hivecls.inf,AddReg
AddReg = hiveusd.inf,AddReg
AddReg = dmreg.inf,DM.AddReg
AddReg = usbboot.inf,usbservices
y en [SourceDisksFiles] tambin
[SourceDisksFiles]
usbboot.inf = 1,,,,,,_x,3,,3
bootvid.dll = 1,,,,,,3_,2,0,0,,1,2
kdcom.dll = 1,,,,,,3_,2,0,0,,1,2

Finalmente, salvamos y cerramos TXTSETUP.SIF. ya terminamos con este.

6-B) DOSNET.INF
Abrimos DOSNET.INF , cambiamos la seccin

que nos quede asi:

d1,usbboot.inf
d1,_default.pif
d1,12520437.cpx
d1,12520850.cpx
....
Atencin: donde dice

deben poner [ F i l e s ] sin los espacios y con los parntesis rectos.

(Taringa por error lo corrige)

6-C) usb.inf
Cambiamos lo que est en verde en ambas secciones [StandardHub.AddService] y en
[CommonClassParent.AddService]

[StandardHub.AddService]
DisplayName = %StandardHub.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%usbhub.sys
LoadOrderGroup = Boot Bus Extender
[CommonClassParent.AddService]
DisplayName = %GenericParent.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%usbccgp.sys
LoadOrderGroup = Boot Bus Extender
6-D) usbport.inf
Cambiamos en la seccin [EHCI.AddService], [OHCI.AddService] , [UHCI.AddService] y en
[ROOTHUB.AddService] :

[EHCI.AddService]
DisplayName = %EHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%usbehci.sys
LoadOrderGroup = Boot Bus Extender

[OHCI.AddService]

DisplayName = %OHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%usbohci.sys
LoadOrderGroup = Boot Bus Extender

[UHCI.AddService]
DisplayName = %UHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%usbuhci.sys
LoadOrderGroup = Boot Bus Extender

[ROOTHUB.AddService]
DisplayName = %ROOTHUB.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%usbhub.sys
LoadOrderGroup = Boot Bus Extender

6-E) usbstor.inf
Cambiamos / Aadimos en la seccin [USBSTOR.AddService]
[USBSTOR.AddService]
DisplayName = %USBSTOR.SvcDesc%
ServiceType = 1
StartType = 0
Tag = 3
ErrorControl = 1
ServiceBinary = %12%USBSTOR.SYS

LoadOrderGroup = Boot Bus Extender

6-F) Nuevo archivo: USBBOOT.INF


Creamos un archivo nuevo llamado USBBOOT.INF en el mismo directorio donde hemos
cambiado los otros archivos y le pegamos esto dentro :
[usbservices]
HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR"," DisplayName",0x00000000,"USB
Mass Storage Driver"
HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR"," ErrorControl",0x00010001,1
HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR"," Group",0x00000000,"System
Reserved"
HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR","
ImagePath",0x00020000,"system32DRIVERSUSBSTOR.SY S"
HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR"," Start",0x00010001,0
HKLM,"SYSTEMCurrentControlSetServicesUSBSTOR"," Type",0x00010001,1
HKLM,"SYSTEMCurrentControlSetServicesusbehci"," DisplayName",0x00000000,"USB 2.0
Enhanced Host Controller Miniport Driver"
HKLM,"SYSTEMCurrentControlSetServicesusbehci"," ErrorControl",0x00010001,1
HKLM,"SYSTEMCurrentControlSetServicesusbehci"," Group",0x00000000,"System Reserved"
HKLM,"SYSTEMCurrentControlSetServicesusbehci","
ImagePath",0x00020000,"system32DRIVERSusbehci.sy s"
HKLM,"SYSTEMCurrentControlSetServicesusbehci"," Start",0x00010001,0
HKLM,"SYSTEMCurrentControlSetServicesusbehci"," Type",0x00010001,1
HKLM,"SYSTEMCurrentControlSetServicesusbhub","D isplayName",0x00000000,"USB2
Enabled Hub"
HKLM,"SYSTEMCurrentControlSetServicesusbhub","E rrorControl",0x00010001,1
HKLM,"SYSTEMCurrentControlSetServicesusbhub","G roup",0x00000000,"System Reserved"
HKLM,"SYSTEMCurrentControlSetServicesusbhub","I
magePath",0x00020000,"system32DRIVERSusbhub.sys"
HKLM,"SYSTEMCurrentControlSetServicesusbhub","S tart",0x00010001,0
HKLM,"SYSTEMCurrentControlSetServicesusbhub","T ype",0x00010001,1

HKLM,"SYSTEMCurrentControlSetServicesusbuhci"," DisplayName",0x00000000,"Microsoft
USB Universal Host Controller Miniport Driver"
HKLM,"SYSTEMCurrentControlSetServicesusbuhci"," ErrorControl",0x00010001,1
HKLM,"SYSTEMCurrentControlSetServicesusbuhci"," Group",0x00000000,"System Reserved"
HKLM,"SYSTEMCurrentControlSetServicesusbuhci","
ImagePath",0x00020000,"system32DRIVERSusbuhci.sy s"
HKLM,"SYSTEMCurrentControlSetServicesusbuhci"," Start",0x00010001,0
HKLM,"SYSTEMCurrentControlSetServicesusbuhci"," Type",0x00010001,1
HKLM,"SYSTEMCurrentControlSetServicesusbohci"," DisplayName",0x00000000,"Microsoft
USB Open Host Controller Miniport Driver"
HKLM,"SYSTEMCurrentControlSetServicesusbohci"," ErrorControl",0x00010001,1
HKLM,"SYSTEMCurrentControlSetServicesusbohci"," Group",0x00000000,"System Reserved"
HKLM,"SYSTEMCurrentControlSetServicesusbohci","
ImagePath",0x00020000,"system32DRIVERSusbohci.sy s"
HKLM,"SYSTEMCurrentControlSetServicesusbohci"," Start",0x00010001,0
HKLM,"SYSTEMCurrentControlSetServicesusbohci"," Type",0x00010001,1

7) Empaquetamos los archivos inf en su formato original IN_


cabarc n USB.IN_ usb.inf
cabarc n USBPORT.IN_ usbport.inf
cabarc n USBSTOR.IN_ usbstor.inf
ok ya tenemos los IN_ modificados.
Ahora solo queda volverlos a poner en el ISO.

Integrando los IN_ al ISO

Abrimos la imgen otra vez con WinISO. Vamos a I386 y borramos estos archivos. Le decimos
al WinISO que salve los cambios.
DOSNET.INF
TXTSETUP.SIF

USB.IN_
USBPORT.IN_
USBSTOR.IN_
Para estar seguros, salimos del WinISO. Lo abrimos otra vez y cargamos la imgen. Vamos a
la carpeta I386, seleccionamos "Add Files". y aadimos nuestros archivos modificados que
seran :
USBBOOT.INF
DOSNET.INF
TXTSETUP.SIF
USB.IN_
USBPORT.IN_
USBSTOR.IN_
Ya est, guardamos el ISO. y terminamos.

9) Quemar el ISO en CD
Usa cualquiera, desde nero, alcohol, Burnatonce , el que mas te guste.

10) Instalando
Apagamos el ordenador. Desconectamos todos los discos internos y externos, asi windows no
encuentra ninguno y evitamos se cargue/joda el MBR (OJO con esto que nos jode el disco).
Vamos al BIOS y quitamos el hdd de la secuencia y dejamos USB en primer lugar, luego
CDROM, los dems disabled. Conectamos el super stick USB o disco duro USB en que
querramos instalar, directo al puerto, nada de hubs por medio.

Y Windows deberia instalarse bien, con la excepciones siguientes :

En la instalacin del driver USB te dir que no est certificado. Esto es normal, nuestros
cambios invalidaron el checksum, y por tanto el driver no est firmado. Le das que "Si" unas
cuantas veces y a tomar pcl.
Al terminar la instalacin la primera vez que arranque el sistema se va a quejar de que no
existe archivo de paginacin. Lo ignoras de momento, windows funciona bien sin l. Este
problema no est an resuelto asi que estamos buscando una solucin... Ya actualizar la

guia cuando la encontremos. De todas formas este no es un error crtico.


Una vez que todo est listo y corriendo, apaga y conecta otra vez tus hdd.
Salu2 y espero que les sea tan til como a mi.
PD. no s porque no me valida cuando pongo la fuente en el lugar indicado, por lo tanto lo
aclaro ac. El material es estrado de: http://www.zafras.wordpress.com
Tuve que tildar contenido propio por un error de Taringa

Otra
Que se puede se puede Y ahora MS Windows EN UN PEN DRIVE!!!! USB !
que me contas Microsoft!

Requerimientos :

Una instalacin de Windows


Un disco USB2 o un Stick USB2 lo suficientemente grande 4gb.
Windows XP CD.
WinISO (o cualquier software que permita edicin directa de archivos ISO)
Microsoft CAB SDK
Software que grabe formato ISO en Cds. Este es gratis burnatonce

A modo de leyenda :
Letras que estn en verde es lo nuevo que se agrega/modifica.
Las lineas de comando ms-dos que haya que escribir lo pondr
en magenta.
Los archivos y lineas (texto) que se eliminan irn en rojo

Sumario:
Vamos a hacer una imgen del CD de WinXP, extraeremos algunos
archivos de la imgen usando el editor de ISOs. Editaremos estos

archivos y los volveremos a meter en el ISO una vez modificados. La


imgen resultante la quemamos en otro CD, y ya puede ser usada para
instalar directamente en un dispositivo USB. Suena fcil eh. bueno
vamos all.

1) Soporta tu pc el arranque desde USB?


Usualmente esto es una opcin en la secuencia de arranque del BIOS. Si
no la ves, actualiza tu BIOS. Si no ests seguro, sigue adelante a ver que
pasa...
2) Descubriendo si tu USB-Drive arranca.
Conecta tu USB drive al ordenador, directamente al puerto, sin Hub.
Apaga el pc, desconecta todos los discos duros, pon un CD booteable de
XP, comienza a instalar y ve hasta la parte donde seleccionas el disco
donde quieres instalar. Si la instalacin pasa de la parte donde has de
seleccionar la particion. Tu USB sirve para arrancar XP. De lo contrario te
dar un error de "Windows no pudo encontrar, su disco, particin, datos,
etc.. bla , bla. Esto no es problema, lo nico que hay que hacer es
formatear el drive USB. Arrancar con el windows normalmente, buscas
esta herramienta de HP , y usarla para formatear el stick o disco usb
completamente en formato NTFS.
3) Haciendo la imgen del disco de XP.
Fcil. Abre WinISO, vete a Actions-> Make ISO from CDROM, y guarda la
imgen de CD. Ya est.

4) Extrayendo los archivos necesarios


Una vez tenemos la imgen, la cargamos en WinISO. Vamos a la carpeta
i386, seleccionamos los archivos siguientes :

TXTSETUP.SIF
DOSNET.INF
USB.IN_
USBPORT.IN_

USBSTOR.IN_
Vamos a Actions -> Extract y los ponemos en una carpeta aparte para
trabajar con ellos.

5) Desempaquetando los archivos IN_


De la linea de comando usamos el Cab SDK.
cabarc x USBSTOR.IN_
cabarc x USB.IN_
cabarc USBPORT.IN_
y nos quedaran los 3 unpacked :

usb.inf
usbport.inf
usbstor.inf
ok ahora borramos los .IN_
del *.in_

6) Editando los archivos.

Bien este es paso principal. Usaremos un editor de texto simple


como Notepad2 .
6-A) TXTSETUP.SIF
Este archivo es cargado en el paso inicial de la instalacin. Aqui
cambiaremos la forma en que windows trata los dispositivos USB
durante el arranque del sistema. Por defecto son tratados como
dispositivos de entrada (input devices) durante la instalacin. Lo
cambiaremos para que los incluya como dispositivos de almacenamiento

(mass storage driver) que por tanto necesita ser cargado antes por el
instalador para que funcione la cosa.
Primero, movemos la entrada siguiente desde
[InputDevicesSupport.Load] hacia la seccin[BootBusExtenders.Load]
[BootBusExtenders.Load]
pci = pci.sys
acpi = acpi.sys
isapnp = isapnp.sys
acpiec = acpiec.sys
ohci1394 = ohci1394.sys
usbehci = usbehci.sys
usbohci = usbohci.sys
usbuhci = usbuhci.sys
usbhub = usbhub.sys
usbstor = usbstor.sys

[InputDevicesSupport.Load]
usbehci = usbehci.sys
usbohci = usbohci.sys
usbuhci = usbuhci.sys
usbhub = usbhub.sys
usbccgp = usbccgp.sys
hidusb = hidusb.sys
serial = serial.sys
serenum = serenum.sys
usbstor = usbstor.sys
... ahora lo mismo para [BootBusExtenders] y [InputDevicesSupport]
[BootBusExtenders]
pci = "PCI-Bustreiber",files.pci,pci
acpi = "ACPI Plug & Play-Bustreiber",files.acpi,acpi
isapnp = "ISA Plug & Play-Bustreiber",files.isapnp,isapnp
acpiec = "Integrierter ACPI-Controllertreiber",files.none,acpiec
ohci1394 = "IEEE-1394-Bus-OHCI-konformer
Anschlusstreiber",files.ohci1394,ohci1394
usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehci
usbohci = "Open Hostcontroller",files.usbohci,usbohci
usbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhci
usbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhub

usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor

[InputDevicesSupport]
usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehci
usbohci = "Open Hostcontroller",files.usbohci,usbohci
usbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhci
usbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhub
hidusb = "HID-Parser",files.hidusb,hidusb
serial = "Treiber fr seriellen Anschluss",files.none,serial
serenum = "Enumerator fr seriellen Anschluss",files.none,serenum
usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor
usbccgp = "USB Generic Parent Driver",files.usbccgp,usbccgp
Luego escribimos algunos keys en el registro.
Inserta lo siguiente en la seccin [HiveInfs.Fresh] :
[HiveInfs.Fresh]
AddReg = hivedef.inf,AddReg
AddReg = hivesys.inf,AddReg
AddReg = hivesft.inf,AddReg
AddReg = hivecls.inf,AddReg
AddReg = hiveusd.inf,AddReg
AddReg = dmreg.inf,DM.AddReg
AddReg = usbboot.inf,usbservices

y en [SourceDisksFiles] tambin
[SourceDisksFiles]
usbboot.inf = 1,,,,,,_x,3,,3
bootvid.dll = 1,,,,,,3_,2,0,0,,1,2
kdcom.dll = 1,,,,,,3_,2,0,0,,1,2
Finalmente, salvamos y cerramos TXTSETUP.SIF. ya terminamos con
este.

6-B) DOSNET.INF
Abrimos DOSNET.INF , cambiamos la seccin [Files] que nos quede asi:

[Files]
d1,usbboot.inf
d1,_default.pif
d1,12520437.cpx
d1,12520850.cpx
....
6-C) usb.inf
Cambiamos lo que est en verde en ambas secciones
[StandardHub.AddService] y en [CommonClassParent.AddService]

[StandardHub.AddService]
DisplayName = %StandardHub.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbhub.sys
LoadOrderGroup = Boot Bus Extender
[CommonClassParent.AddService]
DisplayName = %GenericParent.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbccgp.sys
LoadOrderGroup = Boot Bus Extender
6-D) usbport.inf
Cambiamos en la seccin [EHCI.AddService], [OHCI.AddService] ,
[UHCI.AddService] y en [ROOTHUB.AddService] :

[EHCI.AddService]
DisplayName = %EHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbehci.sys
LoadOrderGroup = Boot Bus Extender

[OHCI.AddService]
DisplayName = %OHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbohci.sys
LoadOrderGroup = Boot Bus Extender

[UHCI.AddService]
DisplayName = %UHCIMP.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbuhci.sys
LoadOrderGroup = Boot Bus Extender

[ROOTHUB.AddService]
DisplayName = %ROOTHUB.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbhub.sys
LoadOrderGroup = Boot Bus Extender
6-E) usbstor.inf
Cambiamos / Aadimos en la seccin [USBSTOR.AddService]
[USBSTOR.AddService]
DisplayName = %USBSTOR.SvcDesc%
ServiceType = 1
StartType = 0
Tag = 3
ErrorControl = 1
ServiceBinary = %12%\USBSTOR.SYS
LoadOrderGroup = Boot Bus Extender

6-F) Nuevo archivo: USBBOOT.INF


Creamos un archivo nuevo llamado USBBOOT.INF en el mismo
directorio donde hemos cambiado los otros archivos y le pegamos esto
dentro :
[usbservices]
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","DisplayName",0x
00000000,"USB Mass Storage Driver"
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ErrorControl",0x0
0010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Group",0x000000
00,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ImagePath",0x00
020000,"system32\DRIVERS\USBSTOR.SYS"
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Start",0x0001000
1,0
HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Type",0x0001000
1,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","DisplayName",0x0
0000000,"USB 2.0 Enhanced Host Controller Miniport Driver"
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ErrorControl",0x00
010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Group",0x0000000
0,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ImagePath",0x0002
0000,"system32\DRIVERS\usbehci.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Start",0x00010001,
0
HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Type",0x00010001,
1
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","DisplayName",0x00
000000,"USB2 Enabled Hub"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ErrorControl",0x000
10001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Group",0x0000000
0,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ImagePath",0x0002
0000,"system32\DRIVERS\usbhub.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Start",0x00010001,

0
HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Type",0x00010001,
1
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","DisplayName",0x0
0000000,"Microsoft USB Universal Host Controller Miniport Driver"
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ErrorControl",0x00
010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Group",0x0000000
0,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ImagePath",0x000
20000,"system32\DRIVERS\usbuhci.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Start",0x00010001,
0
HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Type",0x00010001,
1
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","DisplayName",0x0
0000000,"Microsoft USB Open Host Controller Miniport Driver"
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ErrorControl",0x00
010001,1
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Group",0x0000000
0,"System Reserved"
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ImagePath",0x0002
0000,"system32\DRIVERS\usbohci.sys"
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Start",0x00010001,
0
HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Type",0x00010001,
1

7) Empaquetamos los archivos inf en su formato original IN_


cabarc n USB.IN_ usb.inf
cabarc n USBPORT.IN_ usbport.inf
cabarc n USBSTOR.IN_ usbstor.inf
ok ya tenemos los IN_ modificados.
Ahora solo queda volverlos a poner en el ISO.
8) Integrando los IN_ al ISO

Abrimos la imgen otra vez con WinISO. Vamos a I386 y borramos estos
archivos. Le decimos al WinISO que salve los cambios.

DOSNET.INF
TXTSETUP.SIF
USB.IN_
USBPORT.IN_
USBSTOR.IN_
Para estar seguros, salimos del WinISO. Lo abrimos otra vez y cargamos
la imgen. Vamos a la carpeta I386, seleccionamos "Add Files". y
aadimos nuestros archivos modificados que seran :
USBBOOT.INF
DOSNET.INF
TXTSETUP.SIF
USB.IN_
USBPORT.IN_
USBSTOR.IN_
Ya est, guardamos el ISO. y terminamos.

9) Quemar el ISO en CD
Usa cualquiera, desde nero, alcohol, Burnatonce , el que mas te guste.

10) Instalando
Apagamos el ordenador. Desconectamos todos los discos internos y
externos, asi windows no encuentra ninguno y evitamos se cargue/joda
el MBR (OJO con esto que nos jode el disco). Vamos al BIOS y quitamos
el hdd de la secuencia y dejamos USB en primer lugar, luego CDROM, los
dems disabled. Conectamos el super stick USB o disco duro USB en que
querramos instalar, directo al puerto, nada de hubs por medio.

Y Windows deberia instalarse bien, con la excepciones siguientes :

En la instalacin del driver USB te dir que no est certificado.


Esto es normal, nuestros cambios invalidaron el checksum, y por
tanto el driver no est firmado. Le das que "Si" unas cuantas veces
y a tomar pcl.
Al terminar la instalacin la primera vez que arranque el sistema
se va a quejar de que no existe archivo de paginacin. Lo ignoras
de momento, windows funciona bien sin el. Este problema no est
an resuelto asi que estamos buscando una solucin... Ya
actualizar la guia cuando la encontremos. De todas formas este
no es un error crtico.
Una vez que todo est listo y corriendo, apaga y conecta otra
vez tus hdd.
Aclaro esta solucion no es correcta de utilizar dado que estamos
modificando codigos del sistema operativos, si realmente te interesa
probar el XP, 200X, o Vista en un PEN o Disco USB lo puedes hacer con
toda confianza que funciona.

Gracias a todos los que me llamaron y me insistieron que no me rinda


con este proyecto Caso cerrado, Windows si soporta Boot por USB.

Salu2

You might also like