none
Error vbs (800A01A8) RRS feed

  • Pregunta

  • Hola Fernando, como estas, buscando info del siguiente error:
    llegue al blog y me tome el atrevimiento de consultarte.

    Te paso el codigo del vbs:

    set objshell = createobject("wscript.shell")

    objshell.run "unin.bat"
    WScript.Sleep 3500
    WshShell.SendKeys "~"
    WScript.Sleep 10
    WshShell.SendKeys "~"
    WScript.Sleep 2500
    WshShell.SendKeys "~"
             

    el codigo del unin.bat:

    RunDll32 C:\ARCHIV~1\ARCHIV~1\INSTAL~1\PROFES~1\RunTime\0701\Intel32\Ctor.dll,LaunchSetup "C:\Archivos de programa\InstallShield Installation Information\{437B532F-EB2B-40A2-8585-DEFA15F92C76}\Setup.exe" -l0xa  Useruninstall -uninst

    La idea es hacer un desinstalador/Instalador desatendido. 
    Si podrias ayudarme te agradeceria!

    Bueno, Saludos y muchas gracias .

    Adran Iramain

    adrian.iramain@gmail.com

    Tucuman  - Argentina

    miércoles, 26 de septiembre de 2012 22:58

Respuestas

  • jejejejejeje, un claro ejemplo de error de copy paste :oP

    Defines un objeto WshShell en a línea:

    set objshell = createobject("wscript.shell")

    Después usas este objeto para ejecutar el bat, hasta ahí todo bien. Ahora es cuando entra en juego el copy paste erróneo. Para enviar las pulsaciones de teclas utilizas el método SendKeys del objeto WshShell, pero no usas el que creaste (objshell) si no otro llamado WshShell que no has creado previamente, de ahí el que se produzca ese error. Prueba a cambiar tu script por este otro:

    set objshell = createobject("wscript.shell")
    objshell.run "unin.bat"
    WScript.Sleep 3500
    objshell.SendKeys "~"
    WScript.Sleep 10
    objshell.SendKeys "~"
    WScript.Sleep 2500
    objshell.SendKeys "~"


    Un saludo

    Fernando Reyes [MS MVP]
    MCSA 2000/2003
    MCSE 2000/2003
    MCITP EnterpriseAdministrator
    Web: http://freyes.svetlian.com
    Blog: http://urpiano.wordpress.com
    RSS: http://urpiano.wordpress.com/feed/
    freyes.champú@champú.mvps.org
    (Aclárate la cabeza si quieres escribirme)

    viernes, 28 de septiembre de 2012 6:17
    Moderador
  • En el PC remoto no te puede funcionar, pues no hay un interfaz de usuario al que pasarle teclas con SendKeys. Deberías probar a lanzarlo con PsExec, que tienen la posibilidad de mostrar los que estás ejecutando cuando se le pasa el modificador /I. No obstante, no estoy seguro de si funcionará, si eso nos lo comentas.

    Un saludo

    Fernando Reyes [MS MVP]
    MCSA 2000/2003
    MCSE 2000/2003
    MCITP EnterpriseAdministrator
    Web: http://freyes.svetlian.com
    Blog: http://urpiano.wordpress.com
    RSS: http://urpiano.wordpress.com/feed/
    freyes.champú@champú.mvps.org
    (Aclárate la cabeza si quieres escribirme)

    lunes, 1 de octubre de 2012 6:52
    Moderador
  • Me temo que no :o((

    Si el desinstalador no tiene una opción quiet o silent y requiere la interacción del usuario, sólo con Sendkeys se puede automatizar y, por tanto, es imprescindible que se muestre el GUI.


    Un saludo

    Fernando Reyes [MS MVP]
    MCSA 2000/2003
    MCSE 2000/2003
    MCITP EnterpriseAdministrator
    Web: http://freyes.svetlian.com
    Blog: http://urpiano.wordpress.com
    RSS: http://urpiano.wordpress.com/feed/
    freyes.champú@champú.mvps.org
    (Aclárate la cabeza si quieres escribirme)

    martes, 2 de octubre de 2012 6:19
    Moderador

Todas las respuestas

  • Perdona Adrian ¿Cuál es la pregunta? Debo estar un poco espeso esta mañana... :oP

    Un saludo

    Fernando Reyes [MS MVP]
    MCSA 2000/2003
    MCSE 2000/2003
    MCITP EnterpriseAdministrator
    Web: http://freyes.svetlian.com
    Blog: http://urpiano.wordpress.com
    RSS: http://urpiano.wordpress.com/feed/
    freyes.champú@champú.mvps.org
    (Aclárate la cabeza si quieres escribirme)

    jueves, 27 de septiembre de 2012 7:28
    Moderador
  • Fernando, en la imagen esta el error. pasa lo siguiente, tiro el script.vbs abre la venta de cmd ejecuta un .bat que contiene lo que esta en la ventana cmd, luego empieza el desistalador. la idea es hacer que solo cambie a la opción "Si" de la ventana Remedy User. por supuesto no cambia y luego sale el error del Script Host.

    Desde ya muchas gracias.

    Saludos

     

    Adrian Iramain

    jueves, 27 de septiembre de 2012 14:38
  • jejejejejeje, un claro ejemplo de error de copy paste :oP

    Defines un objeto WshShell en a línea:

    set objshell = createobject("wscript.shell")

    Después usas este objeto para ejecutar el bat, hasta ahí todo bien. Ahora es cuando entra en juego el copy paste erróneo. Para enviar las pulsaciones de teclas utilizas el método SendKeys del objeto WshShell, pero no usas el que creaste (objshell) si no otro llamado WshShell que no has creado previamente, de ahí el que se produzca ese error. Prueba a cambiar tu script por este otro:

    set objshell = createobject("wscript.shell")
    objshell.run "unin.bat"
    WScript.Sleep 3500
    objshell.SendKeys "~"
    WScript.Sleep 10
    objshell.SendKeys "~"
    WScript.Sleep 2500
    objshell.SendKeys "~"


    Un saludo

    Fernando Reyes [MS MVP]
    MCSA 2000/2003
    MCSE 2000/2003
    MCITP EnterpriseAdministrator
    Web: http://freyes.svetlian.com
    Blog: http://urpiano.wordpress.com
    RSS: http://urpiano.wordpress.com/feed/
    freyes.champú@champú.mvps.org
    (Aclárate la cabeza si quieres escribirme)

    viernes, 28 de septiembre de 2012 6:17
    Moderador
  • Gracias Fernando, tenes toda la razón, ya solucione el inconveniente. Esto anda en forma local, mi problemática es resolverlo o mejor dicho que se ejecute en forma remota, otra pc, bajo dominio.

    Te paso los códigos de los script que tengo. 

    PC.bat: contiene esto:

    call do.bat 10.231.28.26
    pause

    DO..bat: 

     

    copy "uninstall.vbs" "\\%1\c$\WINDOWS\system32"
    copy "unin.bat" "\\%1\c$\WINDOWS\system32"


    psexec \\%1 "cscript.exe" "c:\WINDOWS\system32\uninstall.vbs"

    UNIN.BAT:

    RunDll32 C:\ARCHIV~1\ARCHIV~1\INSTAL~1\PROFES~1\RunTime\0701\Intel32\Ctor.dll,LaunchSetup "C:\Archivos de programa\InstallShield Installation Information\{437B532F-EB2B-40A2-8585-DEFA15F92C76}\Setup.exe" -l0xa Useruninstall -uninst

    uninstall.vbs:

    Dim WSHShell

    Set WSHShell = CreateObject("Wscript.Shell")
    WSHShell.Run "C:\WINDOWS\system32\unin.bat" 
    set WshShell = WScript.CreateObject("WScript.Shell")
    WScript.Sleep 20000
    WshShell.SendKeys "{TAB}"
    WScript.Sleep 10
    WshShell.SendKeys "~"
    WScript.Sleep 25000
    WshShell.SendKeys "~"   

    en la pc remota no hace nada, y tampoco me da error.

    Tengo perfil de Administrador en el dominio.

    Saludos y gracias


    Adrian Iramain

    viernes, 28 de septiembre de 2012 15:08
  • En el PC remoto no te puede funcionar, pues no hay un interfaz de usuario al que pasarle teclas con SendKeys. Deberías probar a lanzarlo con PsExec, que tienen la posibilidad de mostrar los que estás ejecutando cuando se le pasa el modificador /I. No obstante, no estoy seguro de si funcionará, si eso nos lo comentas.

    Un saludo

    Fernando Reyes [MS MVP]
    MCSA 2000/2003
    MCSE 2000/2003
    MCITP EnterpriseAdministrator
    Web: http://freyes.svetlian.com
    Blog: http://urpiano.wordpress.com
    RSS: http://urpiano.wordpress.com/feed/
    freyes.champú@champú.mvps.org
    (Aclárate la cabeza si quieres escribirme)

    lunes, 1 de octubre de 2012 6:52
    Moderador
  • Fernando, si, efectivamente con el modificador -i del psexec, funciona correctamente. Ahora el problema surge, que tiene que tener logueado un usuario para poder funcionar. Alguna idea para poder hacer esta tarea sin que sea necesario tener ususario logueado en la pc remota?

    Saludos!


    Adrian Iramain

    lunes, 1 de octubre de 2012 15:41
  • Me temo que no :o((

    Si el desinstalador no tiene una opción quiet o silent y requiere la interacción del usuario, sólo con Sendkeys se puede automatizar y, por tanto, es imprescindible que se muestre el GUI.


    Un saludo

    Fernando Reyes [MS MVP]
    MCSA 2000/2003
    MCSE 2000/2003
    MCITP EnterpriseAdministrator
    Web: http://freyes.svetlian.com
    Blog: http://urpiano.wordpress.com
    RSS: http://urpiano.wordpress.com/feed/
    freyes.champú@champú.mvps.org
    (Aclárate la cabeza si quieres escribirme)

    martes, 2 de octubre de 2012 6:19
    Moderador