Estoy creando un proceso para la instalación de software por la red, el proceso lo realizo en tres fases,
La primera :
for /F %%i in (equips1.txt) do (
copy /Y c:\DESPLEGAMENT\PAS1\executa.bat %%i\c$\executa.bat
)
Ejecuto el siguiente bat que instala el fichero executa.bat en cada maquina definida en el fichero equips1.txt
Este fichero executa.bat indica la ruta del aplicativo a instalar, una ruta de red:
\\10.0.1.100\archivos\DADESPUBLIQUES\REPOSITORI\MGD35\SCRIPT\MGD35.EXE
El segundo paso es realizar el despliegue del aplicativo MGD35.exe:
ejecutando psexec.exe @EQUIPS2.TXT -u dominio\usuari -p password -i -d "C:\EXECUTA.BAT"
He de decir que mgd35.exe lo he automaticado anteriormente con autoIT v3
RUN("\\10.0.1.100\archivos\DADESPUBLIQUES\REPOSITORI\MGD35\MGD35.EXE")
WinWaitActive("Instalar - Gestión MGD")
send("{TAB 2}")
send("{ENTER}")
send("{ENTER}")
SEND("{DOWN}")
SEND("{TAB 2}")
SEND("{ENTER}")
SEND("{TAB 2}")
SEND("{ENTER}")
SEND("{TAB}")
SEND("{UP}")
SEND("{TAB 2}")
SEND("{ENTER}")
SEND("{ENTER}")
SEND("{TAB}")
SEND("{ENTER}")
con lo cual ejecutando psexec tendria que enviar a ejecutar el fichero executa.bat en local y este a su vez ejecutar el
proceso automatizado de mgd35.exe.
El problema viene que no lo hace, muestra unicamente la pantalla inicial y ni sigue automatizando el proceso,es como si le faltara algo. en cambio si ejecuto el proceco executa.bat en local funciona a la perfección.
Sabeis a que puede ser debido????
Gracias.
ERROR EN PROCESO POR LOTES
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: ERROR EN PROCESO POR LOTES
Puffff.....que lio .
Para empezar, que sepas que toda la automatización se puede hacer perfectamente con AutoIt sin necesidad de otros archivos externos, como un bat .
Dices que se te queda en la pantalla principal??? Suena a que no continua el script a partir de esta función: WinWaitActive("Instalar - Gestión MGD"). Por ejemplo, puedes comprobar esto metiendo justo después un msgbox(0,"","") a ver si salta. Si no salta ya sabemos que el problema seguramente es de la función anterior.
Mira a ver el título de la ventana no sea que este mal escrito y no la encuentre nunca. Por esa causa se puede quedar parado el script. Por ejemplo, puede que no tenga espacios aunque parezca que sí: WinWaitActive("Instalar-Gestión MGD"). Fijate bien que el título sea exactamente a lo que pones.
Saludos.
Para empezar, que sepas que toda la automatización se puede hacer perfectamente con AutoIt sin necesidad de otros archivos externos, como un bat .
Dices que se te queda en la pantalla principal??? Suena a que no continua el script a partir de esta función: WinWaitActive("Instalar - Gestión MGD"). Por ejemplo, puedes comprobar esto metiendo justo después un msgbox(0,"","") a ver si salta. Si no salta ya sabemos que el problema seguramente es de la función anterior.
Mira a ver el título de la ventana no sea que este mal escrito y no la encuentre nunca. Por esa causa se puede quedar parado el script. Por ejemplo, puede que no tenga espacios aunque parezca que sí: WinWaitActive("Instalar-Gestión MGD"). Fijate bien que el título sea exactamente a lo que pones.
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Re: ERROR EN PROCESO POR LOTES
Ya que se puede parecer un poco lioso o quizas no he sabido expresarme mejor,
lo que me comentas ya lo he hecho para comprobar que la pantalla este activa y salta el mensaje,
veras si ejecuto el script compilado en local funciona perfectamente, automatiza el proceso sin probemas,
si lo ejecuto por medico de un fichero .bat como es el caso de executa.bat en local, tambien funciona perfectamente,
el problema viene cuando doy orden a psexec que lo ejecute en remoto creo que lo ejecuta por medio de una consola de comandos y ahi se pierde el script.
Visto que no me salida, en lugar de utilizar psexec, envio una función AT que programa la tarea en local, si la programo en local funciona si le envio la tarea a otro equipo en remoto no, at \\xx.zz.yy.vv 18:30 /interactive c:\executa.bat
Creo que son cosas de privilegios de usuario, pero el caso es que todo lo ejecuto como administrador de dominio.
lo que me comentas ya lo he hecho para comprobar que la pantalla este activa y salta el mensaje,
veras si ejecuto el script compilado en local funciona perfectamente, automatiza el proceso sin probemas,
si lo ejecuto por medico de un fichero .bat como es el caso de executa.bat en local, tambien funciona perfectamente,
el problema viene cuando doy orden a psexec que lo ejecute en remoto creo que lo ejecuta por medio de una consola de comandos y ahi se pierde el script.
Visto que no me salida, en lugar de utilizar psexec, envio una función AT que programa la tarea en local, si la programo en local funciona si le envio la tarea a otro equipo en remoto no, at \\xx.zz.yy.vv 18:30 /interactive c:\executa.bat
Creo que son cosas de privilegios de usuario, pero el caso es que todo lo ejecuto como administrador de dominio.