Usuário com melhor resposta
Executar comando do CMD

Pergunta
-
Olá pessoal, eu utilizo este código para executar comandos, como o exemplo:
Private Sub ExecutarComando() Dim arrayCommandos() As String = {"sc config wuauserv start= auto", _ "sc config bits start= auto", "sc config DcomLaunch start= auto", _ "net stop wuauserv", "net start wuauserv", "net stop bits", _ "net start bits", "net start DcomLaunch"} For Each str As String In arrayCommandos Shell("cmd.exe /c " & str) Next End Sub
Porém quando o comando do CMD tem "" (aspas) o código não funciona. O código do CMD que preciso usar é este:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\Lanmanserver\parameters" /v SizReqBuf /t REG_DWORD /d 0x00014596 /f REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider" /v class /t REG_DWORD /d 0x00000001 /f REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider" /v DnsPriority /t REG_DWORD /d 0x00000007 /f REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider" /v HostsPriority /t REG_DWORD /d 0x00000006 /f REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider" /v LocalPriority /t REG_DWORD /d 0x00000005 /f REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider" /v NetbtPriority /t REG_DWORD /d 0x00000008 /f
Como faço? Obrigado.
Respostas
-
É só usar aspas duplas:
Dim arrayCommandos() As String = _ { _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Lanmanserver\parameters"" /v SizReqBuf /t REG_DWORD /d 0x00014596 /f", _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider"" /v class /t REG_DWORD /d 0x00000001 /f", _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider"" /v DnsPriority /t REG_DWORD /d 0x00000007 /f", _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider"" /v HostsPriority /t REG_DWORD /d 0x00000006 /f", _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider"" /v LocalPriority /t REG_DWORD /d 0x00000005 /f", _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider"" /v NetbtPriority /t REG_DWORD /d 0x00000008 /f" _ }
Aí é só reutilizar o For Each com esse array que deverá funcionar...Herbert Lausmann
- Marcado como Resposta Free4k terça-feira, 22 de abril de 2014 20:16
Todas as Respostas
-
É só usar aspas duplas:
Dim arrayCommandos() As String = _ { _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Lanmanserver\parameters"" /v SizReqBuf /t REG_DWORD /d 0x00014596 /f", _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider"" /v class /t REG_DWORD /d 0x00000001 /f", _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider"" /v DnsPriority /t REG_DWORD /d 0x00000007 /f", _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider"" /v HostsPriority /t REG_DWORD /d 0x00000006 /f", _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider"" /v LocalPriority /t REG_DWORD /d 0x00000005 /f", _ "REG ADD ""HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider"" /v NetbtPriority /t REG_DWORD /d 0x00000008 /f" _ }
Aí é só reutilizar o For Each com esse array que deverá funcionar...Herbert Lausmann
- Marcado como Resposta Free4k terça-feira, 22 de abril de 2014 20:16
-
Bom dia Howar,
Conseguiu resolver?
Att,
Giovani Cruzara – Microsoft Contingent Staff
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.
Msdn Community Support
Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde. -