none
Fazer um BAT chamar um VBScript RRS feed

  • Pergunta

  • Ola pessoal;
       Utilizo uma ferramenta de CRM chamada Pivotal.
       A instalação do Server é tranquila, porem a instalação do módulo off-line, nem tanto.

       Basicamente preciso instalar todos os softwares que existem no Server em alguns Laptops, porem em modulo Mobile para sincronização. Esta instalação contem 5 Setups de diferentes utilitários e mais 20 Service Pack e Hotfix .... considerando que tenho mais de 90 Laptops, terei um trabalhão a frente

        O fabricante, me da uma linha de comando para instalar os seus setups em Silent mode, porem em VBScript (que infelizmente eu não manjo tanto), segue a linha:

     

    var WshShell = WScript.CreateObject("WScript.Shell");

    WshShell.Run("setup.exe /s /v\"/qn /L*V \"%TEMP%/PivotalWindowsAccess59SilentInstall.log\" \"ALLUSERS=1\"\"",2,true);

     

        Tenho um script em BAT para fazer a instalação, mas não consigo converter a linha acima em BAT. Alguém poderia dar um help para:

          1º Converter a linha acima para ser usado em BAT

          2º OU converter o meu BAT em VBScript para eu usar a linha acima

          3º OU fazer o meu BAT chamar um VMScript

          4º OU fazer o VBScript chamar um BAT.

        Brigadão

     

     

     

    @ECHO off

    @ECHO INSTALL 1º Pivotal Windows Access and Windows Client 5.9 ...

    @ECHO -------------------------------------------------------------------------------------------

    IF NOT EXIST C:\Util\Pivotal_59\Install\01_Pivotal_WindowsAccess_WindowsClient. (

      mkdir C:\Util\Pivotal_59\Install\01_Pivotal_WindowsAccess_WindowsClient.

    ) ELSE (

             @ECHO Directory - C:\Util\Pivotal_59\Install\01_Pivotal_WindowsAccess_WindowsClient - Existing

             @ECHO.

           )

    IF errorlevel 1 goto Error_mkdir

    @ECHO -------------------------------------------------------------------------------------------

    xcopy "\\srv01\DataFiles\SOFTWARE\Aplicativos\Pivotal\_SETUP_Pvtl59-Mobile\Software_Pvtl\Install\01_Pivotal_WindowsAccess_WindowsClient\*.*" "C:\Util\Pivotal_59\Install\01_Pivotal_WindowsAccess_WindowsClient\" /Y /E

    IF errorlevel 1 goto Error_XCopy

    @ECHO -------------------------------------------------------------------------------------------

    @echo Start Install.

    ?????????????????????????????????????????????????

    IF errorlevel 1 goto Error_Start_Install

    @ECHO -------------------------------------------------------------------------------------------

    goto End

     

    :Error_mkdir

    @ECHO ERRO - MKdir.

    goto End

     

    :Error_XCopy

    @ECHO ERRO - XCopy Files Install.

    goto End

     

    :Error_Start_Install

    @ECHO ERRO - Start Install Pivotal 59.

    goto End

     

    :End_Success

    @ECHO The Pivotal Windows Access and Windows Client 5.9 foi success of Installed!!!

    goto End

     

    :End

    @ECHO The end.

    PAUSE


    Prefiro e ceu pelo clima e o inferno pela companhia!!!
    terça-feira, 3 de março de 2009 23:28

Respostas

  • Olá,

    Vamos lá:

    1º Converter a linha acima para ser usado em BAT
    Se você copiar a linha não funciona?? Exemplo:
    setup.exe /s /v/qn /L*V \"%TEMP%/PivotalWindowsAccess59SilentInstall.log\ALLUSERS=1,2,true


    2º OU converter o meu BAT em VBScript para eu usar a linha acima


    Seu script copia os arquivos do \\srv01 para c:\Util, segue abaixo um vbs que faz isso:

    strPasta="C:\teste\"
    strDestino = "\\servidor\compartilhamento\"

    set FSo = CreateObject("Scripting.FileSystemObject")
    set folder = FSO.getFolder (strPasta)


    for each file in folder.files
          If FSO.FileExists(strDestino & file.name) Then
        FSO.DeleteFile(strDestino & file.name)
          End if
          FSO.CopyFile folder.shortpath & "\" & file.name , strDestino & file.name, OverwriteExisting
    next



     3º OU fazer o meu BAT chamar um VMScript

    Para uma bat chamar um vbs basta você colocar na bat:

    \\servidor\compartilhamento\nomedovbs.vbs


     4º OU fazer o VBScript chamar um BAT.

    Para chamar a bat por vbs, você pode usar:

    WshShell.Run(nomedabat.bat)


    Qualquer dúvida, poste pra nós.

    Até mais,

    Jesiel

    Obs.: Se útil, classifique a resposta
    quarta-feira, 4 de março de 2009 11:42

Todas as Respostas

  • Olá,

    Vamos lá:

    1º Converter a linha acima para ser usado em BAT
    Se você copiar a linha não funciona?? Exemplo:
    setup.exe /s /v/qn /L*V \"%TEMP%/PivotalWindowsAccess59SilentInstall.log\ALLUSERS=1,2,true


    2º OU converter o meu BAT em VBScript para eu usar a linha acima


    Seu script copia os arquivos do \\srv01 para c:\Util, segue abaixo um vbs que faz isso:

    strPasta="C:\teste\"
    strDestino = "\\servidor\compartilhamento\"

    set FSo = CreateObject("Scripting.FileSystemObject")
    set folder = FSO.getFolder (strPasta)


    for each file in folder.files
          If FSO.FileExists(strDestino & file.name) Then
        FSO.DeleteFile(strDestino & file.name)
          End if
          FSO.CopyFile folder.shortpath & "\" & file.name , strDestino & file.name, OverwriteExisting
    next



     3º OU fazer o meu BAT chamar um VMScript

    Para uma bat chamar um vbs basta você colocar na bat:

    \\servidor\compartilhamento\nomedovbs.vbs


     4º OU fazer o VBScript chamar um BAT.

    Para chamar a bat por vbs, você pode usar:

    WshShell.Run(nomedabat.bat)


    Qualquer dúvida, poste pra nós.

    Até mais,

    Jesiel

    Obs.: Se útil, classifique a resposta
    quarta-feira, 4 de março de 2009 11:42
  • Só uma questão adicional, Fabrício: você não pretende colocar isso no logon dos usuários, pretende?

    []s,


    Vinicius Canto
    MVP Admin Frameworks
    http://viniciuscanto.blogspot.com

    Vinicius Canto MVP Admin Frameworks Blog: http://viniciuscanto.blogspot.com
    domingo, 8 de março de 2009 15:11
    Moderador