none
Executar vbs como administrador RRS feed

  • Pergunta

  • Gente, eu preciso instalar o agente do ocs nas máquinas da rede, porém não estou conseguindo. Tenho um script que está abaixo:

    On Error Resume Next
    
    strComputer = "."
    
    Set WshNetwork = WScript.CreateObject("WScript.Network")
    Set oShell = CreateObject("WScript.Shell")
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    
    set oEnv = oShell.Environment("PROCESS")
    oEnv("SEE_MASK_NOZONECHECKS") = 1
    
    programs = oShell.ExpandEnvironmentStrings("%ProgramFiles%")
    
    programsx86 = programs & "(x86)\OCS Inventory Agent\OCSInventory.exe"
    programsx64 = programs & "\OCS Inventory Agent\OCSInventory.exe"
    
    If (NOT objFSO.FileExists (programsx86) and NOT objFSO.FileExists (programsx64)) then
        'Chamada de sistema para instalação
        oShell.Run "\\192.168.0.5\netlogon\OCS-NG-Agent-Setup.exe /NO_SYSTRAY /SERVER=http://192.168.0.8/ocsinventory /NP /NOSPLASH /S /TAG=" & WshNetwork.ComputerName & " /DEBUG /NOW" , 0, true
    End If
    
    oEnv.Remove("SEE_MASK_NOZONECHECKS")


    Se eu executar esse script numa maquina da rede que estava logada com administrador, tranquilo! O agente é instalado sem problemas, mas não funciona com usuário comum do dominio. Então pesquisei e vi que é possível instalar programas com o comando "runas". Mas até agora não consegui. Segue abaixo como deixei o script com o runas:

    On Error Resume Next
    
    strComputer = "."
    
    Set WshNetwork = WScript.CreateObject("WScript.Network")
    Set oShell = CreateObject("WScript.Shell")
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    
    set oEnv = oShell.Environment("PROCESS")
    oEnv("SEE_MASK_NOZONECHECKS") = 1
    
    programs = oShell.ExpandEnvironmentStrings("%ProgramFiles%")
    
    programsx86 = programs & "(x86)\OCS Inventory Agent\OCSInventory.exe"
    programsx64 = programs & "\OCS Inventory Agent\OCSInventory.exe"
    
    If (NOT objFSO.FileExists (programsx86) and NOT objFSO.FileExists (programsx64)) then
        'Chamada de sistema para instalação
        oShell.Run "runas /user:dominio\usuario_adm__do_dominio \\192.168.0.5\netlogon\OCS-NG-Agent-Setup.exe" /NO_SYSTRAY /SERVER=intranet/ocsinventory /NP /NOSPLASH /S /TAG=" & WshNetwork.ComputerName & " /DEBUG /NOW" , 0, true"
        WScript.Sleep 100
        oShell.Sendkeys "senha~"
    End If
    
    oEnv.Remove("SEE_MASK_NOZONECHECKS")


    Já tentei de diversas formas, mas até agora nada.


    • Editado Fábio JrModerator quarta-feira, 9 de outubro de 2013 13:03 Formatação do código
    quarta-feira, 9 de outubro de 2013 12:54

Respostas

  • Olá Fernando.

    Na minha implantação não é necessário informar caminho da startup em parametros não.

    O que estou utilizando é o oscpackage.exe no "Nome do Script" e os parametros são /install /np

    Via script de computador, em todas as vezes que fiz, funcionou legal. Seu user está recebendo as GPOs de forma correta? De um gpupdate /force e depois um gpresult /r e poste os resultados.

    Abraço

    quarta-feira, 9 de outubro de 2013 16:20
  • Pessoal, funcionou! Deixei da forma como dito acima. Agradeço pela força.

    • Marcado como Resposta fernandorosil quarta-feira, 9 de outubro de 2013 19:06
    quarta-feira, 9 de outubro de 2013 19:06

Todas as Respostas

  • Essa forma que você tentou não é segura.

    Acredito que você tenha um Dominio (AD), já tentou colocar como script de inicialização (start up)?

    O script de start up roda com a conta SYSTEM então provavelmente você vai conseguir instalar.

    Verifique se "Domain Computers" tem permissão na pasta da rede onde está o instalador.


    Fábio de Paula Junior

    quarta-feira, 9 de outubro de 2013 13:05
    Moderador
  • Fabio, acho que vc quer saber se os domain users têm permissão na pasta
    do instalador né? Vou testar o startup, mas acredito que já tentei
    antes.
    quarta-feira, 9 de outubro de 2013 13:19
  • Olá Fernando, como vai?

    Basta configurar uma GPO com script de inicialização de COMPUTADOR, pois, assim o script será executado com a conta SYSTEM! Se configurar a GPO pra usuario não funcionará.

    Tenho o OCS e implantei utilizando o ocspackage.exe.

    Abraço

    • Sugerido como Resposta Nathan Pinotti quarta-feira, 9 de outubro de 2013 13:21
    quarta-feira, 9 de outubro de 2013 13:21
  • Fernando,

    Eu quis dizer "Domain Computers", porque quando você utiliza script de inicialização é a conta do computador que vai acessar a rede para executar a instalação.


    Fábio de Paula Junior

    quarta-feira, 9 de outubro de 2013 13:30
    Moderador
  • Olá Nathan, tudo bem cara e vc?

    Cara, eu já tentei das duas formas (ocspackage.exe e scripts, mas não consigo. Prefiro até que o ocspackage, mais seguro. Eu preparei o ocspackage.exe, ele não funcionou com o usuário comum, executei ele manualmente com usuário administrador, ele instalou tranquilo, mas a máquna não foi adicionada no dominio. Se puder me ajudar agradeço.

    Abraços

    quarta-feira, 9 de outubro de 2013 13:38
  • Fabio, acabei de dá permissão ao domain computers, mas não tive sucesso ainda. Criei uma gpo, fui em editar/configurações do computador/configurações do windows/scripts(inicialização/encerramento)/inicializar, em seguida cliquei em "mostrar arquivos", copiei o script para este local, copiei o endereço da pasta startup e coloquei no campo "parâmetros de script". No campo "nome do script", cliquei em "procurar" e seguir o caminho do script, na pasta startup. Tá correto?
    quarta-feira, 9 de outubro de 2013 14:15
  • Olá Fernando.

    Na minha implantação não é necessário informar caminho da startup em parametros não.

    O que estou utilizando é o oscpackage.exe no "Nome do Script" e os parametros são /install /np

    Via script de computador, em todas as vezes que fiz, funcionou legal. Seu user está recebendo as GPOs de forma correta? De um gpupdate /force e depois um gpresult /r e poste os resultados.

    Abraço

    quarta-feira, 9 de outubro de 2013 16:20
  • Pessoal, funcionou! Deixei da forma como dito acima. Agradeço pela força.

    • Marcado como Resposta fernandorosil quarta-feira, 9 de outubro de 2013 19:06
    quarta-feira, 9 de outubro de 2013 19:06
  • Então como ficou o Script final funcionando?

    Eu sou iniciante e to meio perdido...

    quinta-feira, 20 de fevereiro de 2014 19:12
  • Fabio sera que vc poderia postar o script completo com a instação via ocspackpage?

    Obrigado.

    quinta-feira, 20 de fevereiro de 2014 19:13
  • Thadeu,

    O Nathan é quem tem o script.

    Importante lembrar é o uso do script de inicialização que é aplicado aos computadores.


    Fábio de Paula Junior

    sexta-feira, 21 de fevereiro de 2014 13:33
    Moderador