CÓMO INTEGRAR 'HOTFIXES' PARA REEMPLAZAR PRE-EXISTENTES DRIVERS

Datos obtenidos de:
http://support.microsoft.com/default.aspx?scid=kb;en-us;814847

Imaginemos que queremos preparar una distribución de XP integrando alguno (o todos) los parches de WindowsUpdate. Dichos parches, al bajarlos están en el formato: Qnnnnnn_XXX_YYY_ZZZ_LL.exe. Vamos a describir punto por punto cómo integrar el hotfix anterior:

1) Abrimos una ventana de comandos (cmd.exe)

2) Nos creamos en la unidad de disco que queramos, por ejemplo, la E:, una carpeta llamada XP, tecleando:

E:
md XP

3) A dicha carpeta copiamos todo el contenido del CD de XP, por ejemplo desde el explorador. El contenido que nos copiemos puede ser perfectamente un XP al cual ya le hayamos integrado el SP1 una vez realizado según el procedimiento que describo en el artículo de "Cómo crear un CD de Windows XP integrado y booteable" que está publicado en: http://www.multingles.net/jmt.htm

4) Creamos dentro de la carpeta E:\XP\I386 una carpeta llamada SVCPACK. Podemos hacerlo desde el explorador, o bien desde la consola de comandos anterior tecleando:

md E:\XP\I386\SVCPACK

5) Creamos una carpeta temporal que nos va a servir para descomprimir y trabajar con los hotfixes:

md E:\temporal

6) Copiamos el hotfix: Qnnnnnn_XXX_YYY_ZZZ_LL.exe a la carpeta E:\XP\I386\SVCPACK, pero renombrándolo sólo con los primeros caracteres de Qnnnnnn.exe.

7) Expandimos el hotfix en la carpeta temporal haciendo:

E:\XP\I386\SVCPACK\Qnnnnnn.exe /X E:\temporal

Esto descomprime el hotfix y dejará en dicha carpeta los ficheros, .cat, .exe, .dll, .sys, etc. correspondientes al hotfix.

8) Copiamos:

9) Borrar el fichero E:\XP\I386\svcpack.inf

10) Crear un nuevo fichero svcpack.inf en la carpeta E:\XP\I386 con el contenido:

[Versión]
Signature="$Windows NT$"

[SetupData]
CatalogSubDir="\i386\svcpack"

[ProductCatalogsToInstall]
Q810400.cat

[SetupHotfixesToRun]
Q810400.exe /q /n /z

siendo en este ejemplo el Q810400 el Qnnnnnn genérico anterior al que nos estábamos refiriendo. Evidentemente, si realizamos más de una integración, a dicho fichero le iremos añadiendo los números de hotfixes que vamos a integrar. Por ejemplo, si fuésemos a integrar los tres que cito a continuación, las secciones correspondiente quedarían:

[ProductCatalogsToInstall]
Q123456.cat
Q123478.cat
Q123490.cat

[SetupHotfixesToRun]
Q123456.exe /q /n /z
Q123478.exe /q /n /z
Q123490.exe /q /n /z


11) Editamos el fichero E:\XP\I386\dosnet.inf para realizarle los siguiente cambios:

a) Añadimos o modificamos la sección: [OptionalSrcDirs] para que contenga referencia a la nueva carpeta SVCPACK

[OptionalSrcDirs]
svcpack


b) Añadimos los nombres de los ficheros que vamos a integrar (los copiados a la carpeta E:\XP\I386) en la sección [ForceCopyDriverCabFiles] (o bien nos creamos una sección, si no existiese, con dicho nombre). Por ejemplo:

[ForceCopyDriverCabFiles]
usbhub.sys

12) Podemos borrar la carpeta temporal E:\temporal, y repetir los pasos anteriores para incorporar otro hotfix.

13) Ahora ya podemos grabar un CD booteable tal y como describo en el artículo de integración del SP1 que he citado al comienzo de éste.

 

--
Jose Manuel Tella Llop
jmtella@compuserve.com

28 - junio - 2003

MI / JMT