none
Script bloquear USB RRS feed

  • Pergunta

  • Blz galera,

    Tenho seguinte script  VBS abaixo já implantado e funcionando via GPO de inicialização de computador, mas está bloqueando somente a USB nas máquinas Vista e Seven, nas máquinas XP gera o seguinte erro quando o usuário loga.

    Outra coisa é que verifiquei no registro do windows "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\   onde o script VBS está setado para criar as chaves, que no Vista as chaves  foram criadas e no XP não foram criadas nenhuma e o script para na primeira chave a ser criada linha 25 caracter 1.

    Será que este script não funciona em XP so vista e seven?

    =============================================================

    Erro ao logar:

    Script: \\servidor\netlogon\bloquei_usb.vbs

    Linha: 25

    Caract: 1

    Erro: Objeto necessário: 'objShell'

    Código: 800A01A8

    Origem: Erro de tempo de execução do Microsoft VBScript

    =============================================================

    Script bloqueia USB:

    const HKEY_LOCAL_MACHINE = &H80000002
    strKeyPath = "SYSTEM\CurrentControlSet\Services\USBSTOR"
    strComputer = "."
    Set oReg=GetObject( _
    "winmgmts:{impersonationLevel=impersonate}!\\" & _
    strComputer & "\root\default:StdRegProv")



    oReg.CreateKey HKEY_LOCAL_MACHINE, strKeyPath
    BinaryValueName = "DisplayName"

    oReg.CreateKey HKEY_LOCAL_MACHINE, strKeyPath
    BinaryValueName = "ErrorControl"

    oReg.CreateKey HKEY_LOCAL_MACHINE, strKeyPath
    BinaryValueName = "ImagePath"

    oReg.CreateKey HKEY_LOCAL_MACHINE, strKeyPath
    BinaryValueName = "Start"

    oReg.CreateKey HKEY_LOCAL_MACHINE, strKeyPath
    BinaryValueName = "Type"

    objShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\DisplayName", "USB Mass Storage Driver","REG_SZ"

    objShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\ErrorControl", "1","REG_DWORD"

    objShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\ImagePath", "system32\DRIVERS\USBSTOR.SYS","REG_EXPAND_SZ"

    objShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\Start", "4","REG_DWORD"

    objShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\Type", "1","REG_DWORD"

    WScript.Quit

     

    Valeu galera!!!

    quinta-feira, 22 de setembro de 2011 18:26

Respostas

  • Adicione no início do script a linha abaixo:

    Set objShell = WScript.CreateObject("WScript.Shell")

    Uma dica, ao invés de ficar criando chaves porque você não exporta a chave pronta para um arquivo.reg só importa nas máquinas?

    Abraço.


    Gabriel Nascimento MCP / MCTS / MCSA / MCSE / CCNA http://gabrielnascimentoit.spaces.live.com -- Se for útil vote.
    • Sugerido como Resposta Fábio JrModerator sexta-feira, 23 de setembro de 2011 19:12
    • Marcado como Resposta Daniel.Alves segunda-feira, 26 de setembro de 2011 11:37
    quinta-feira, 22 de setembro de 2011 18:51

Todas as Respostas

  • Adicione no início do script a linha abaixo:

    Set objShell = WScript.CreateObject("WScript.Shell")

    Uma dica, ao invés de ficar criando chaves porque você não exporta a chave pronta para um arquivo.reg só importa nas máquinas?

    Abraço.


    Gabriel Nascimento MCP / MCTS / MCSA / MCSE / CCNA http://gabrielnascimentoit.spaces.live.com -- Se for útil vote.
    • Sugerido como Resposta Fábio JrModerator sexta-feira, 23 de setembro de 2011 19:12
    • Marcado como Resposta Daniel.Alves segunda-feira, 26 de setembro de 2011 11:37
    quinta-feira, 22 de setembro de 2011 18:51
  • Daniel,

    Pelo erro (Erro: Objeto necessário: 'objShell') não deveria funcionar em lugar algum (XP, seven,...), se vc não setou o objeto objShell (Set objShell = WScript.CreateObject("WScript.Shell")) como ele vai conhecer o método RegWrite?


    Fábio de Paula Junior

    sexta-feira, 23 de setembro de 2011 19:12
    Moderador