Editar

Editar

¿Cómo puedo ejecutar un script cmd durante la configuración de Windows en algún lugar entre el comienzo de la fase 3 y el comienzo de la fase 5? Necesito copiar archivos dependientes del hardware desde la unidad USB a la unidad C: antes de que se active la detección de hardware. Utilizo wmic, que se ejecuta en WinPE, para determinar el hardware.

EDITAR: Si alguien está interesado...

En Boot.Wim\Index2:

  1. cambiar el nombre de setup.exe a usetup.exe
  2. Modificar Boot.Wim-Index:2-Root\Windows\system32\startnet.cmd
    wpeinit
    start /w usetup.exe /unattend:yourfile.xml /noreboot
    do what you want here
    wpeutil reboot
    

Úselo para manipular archivos. Si necesita trabajar en Windows, agregue sus scripts al archivo \windows\setup\scripts\SetupComplete.cmd.

Tenga en cuenta que SetupComplete.cmd se ejecuta de forma oculta, así que asegúrese de que se ejecute sin intervención.

Respuesta1

De acuerdo a estoArtículo de Microsoft TechnetPuede ejecutar un script personalizado al final de la Fase 3 haciendo lo siguiente:

Puede realizar más personalizaciones una vez que se complete la instalación de Windows agregando comandos al archivo %WINDIR%\Setup\Scripts\SetupComplete.cmd. Este archivo le permite instalar aplicaciones adicionales, ejecutar scripts personalizados de Windows (cscript/wscript) o realizar otras modificaciones en el sistema antes de que un usuario inicie sesión.

Los comandos del archivo Setupcomplete.cmd se ejecutan con privilegios del sistema local.

Después de instalar Windows, pero antes de que aparezca la pantalla de inicio de sesión, el programa de instalación de Windows busca el archivo SetupComplete.cmd en el directorio %WINDIR%\Setup\Scripts\.

Si se encuentra un archivo SetupComplete.cmd, se ejecuta el archivo. De lo contrario, la instalación continúa normalmente. El programa de instalación de Windows registra la acción en el archivo Setupact.log.

No puede reiniciar el sistema y continuar ejecutando SetupComplete.cmd.

El programa de instalación no verifica ningún código de salida ni nivel de error en el script después de ejecutar SetupComplete.cmd.

La funcionalidad de Setupcomplete.cmd difiere de los comandos RunSynchronous y RunAsynchronous en que Setupcomplete.cmd se ejecuta después de que se completa la instalación de Windows, mientras que los comandos RunSynchronous y RunAsynchronous se ejecutan durante la instalación de Windows.

Por lo tanto, cualquier script que desee ejecutar simplemente debe agregarse a un archivo "SetupComplete.cmd" y colocarse en %WINDIR%\Setup\Scripts dentro de su imagen de Windows. El proceso de instalación lo ejecutará automáticamente siempre que encuentre el script allí.

(Perdón por copiar y pegar, pero realmente no hay mucho más).

Editar

Como nota, si los archivos que está copiando son archivos de controladores de hardware, simplemente puede agregarlos a la imagen de Windows PE o a la propia imagen de Windows y no preocuparse por un script. Aquí está elArtículo de Microsoft Techneteso te dice como hacerlo. (No voy a copiarlo ni pegarlo porque es demasiado).

Si se trata solo de otros archivos generales (imágenes, documentos, etc.), también puede agregarlos a cualquier carpeta que desee dentro de la imagen de Windows. Aquí se explica cómo hacerlo usando DSIM:Artículo de Microsoft TechnetEl artículo se encuentra en la biblioteca de Windows 8/8.1, pero sigue los mismos pasos para Windows 7.

Evitaría una secuencia de comandos solo para copiar archivos (si eso es todo lo que hace su secuencia de comandos). Agregaría los archivos o controladores a la imagen y luego no tendrá que preocuparse por lo que sucede si su secuencia de comandos falla por algún motivo.

Editar 2

Según su comentario a continuación y que indicó que está usando WMIC durante WinPE para determinar el hardware, es posible que pueda agregar el script a WinPE como se detalla en esteArtículo de Microsoft Technet. Creo que podría ser demasiado pronto para copiar los archivos, pero tendría que realizar una prueba para estar seguro. Sé que agregué un controlador para una interfaz de red a una imagen de WinPE, pero eso es un poco diferente de lo que estás haciendo.

Sin embargo, Creo que su mejor opción es usar Microsoft Deployment Toolkit (MDT) y configurar sus controladores según los perfiles de hardware y/o la marca/modelo de la computadora. Está diseñado exactamente para este tipo de escenario y debería permitirle personalizar qué controladores se instalan, cuándo y dónde. Esto puede resultar un poco más complicado que simplemente usar Windows AIK, pero si las necesidades de su controlador son tan específicas, creo que obtendrá mejores resultados.

Los tutoriales que seguí cuando comencé a usar MDT están aquí:

  1. WindowsNetworking.com - Implementación de Vista usando AIK- Si bien esto está orientado a Vista, la mayoría de los pasos son los mismos para 7. Dependiendo de qué tan familiarizado esté con AIK, puede saltar a la parte 24, que comienza a hablar sobre MDT.
  2. WindowsNetworking.com - Implementación de 7 usando AIK- Este es casi una continuación del enlace anterior ya que no repasa todos los detalles del primero, sólo los cambios entre el Vista AIK y el 7 AIK. La sección sobre la gestión de conductores con MDT comienza en la parte 23. Creo que las partes 25 y 26 serían las más importantes para usted.

Creo que esto le brindará una mejor opción de implementación que usar un script porque no creo que pueda ejecutar un script personalizado en el momento en que desea ejecutarlo. Espero que esto te ayude.

información relacionada