
Quero alterar o caminho para o executável de um serviço na linha de comando.
Como eu posso fazer isso?
Quero executar outro .EXE do caminho desse serviço para o executável.
Responder1
Você pode usar o sc config
comando para alterar o caminho para o qual um serviço aponta:
SC CONFIG YourServiceName binPath= "C:\SomeDirectory\YourFile.EXE"
Isso atualizará o serviço chamado YourServiceName
e alterará a entrada "Caminho para executável" para C:\SomeDirectory\YourFile.EXE
. Você desejará reiniciar seu serviço posteriormente, o que pode ser feito com:
NET STOP YourServiceName & NET START YourServiceName
Responder2
Você precisará fazer isso no registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Serviços
Navegue até o serviço e modifique o nome da imagem para refletir o novo caminho
Como sempre, faça um backup do sistema ANTES.
Responder3
A resposta fornecida acima funciona muito bem, não posso responder, mas para somar, caso você precise ter aspas ou outros argumentos no caminho, digamos, para corrigir uma vulnerabilidade de caminho sem aspas no registro, como um imagepath, você pode fazer o seguintedo CMDcomo administrador:
(por exemplo, para C:\Arquivos de Programas (x86)\YourService\YourProcess.exe)
SC CONFIG YourService binPath= "\"C:\Program Files (x86)\YourService\YourProcess.exe\"
você pode fazer o seguintedo PowerShellcomo administrador:
SC.exe CONFIG YourService binPath= --% "\"C:\Program Files (x86)\YourService\YourProcess.exe\"
Isso lhe dará o seguinte resultado:
"C:\Program Files (x86)\YourService\YourProcess.exe"
...argumentos sangrentos e parâmetros de escape são um pesadelo! Espero que isso ajude alguém no futuro.
Responder4
Você não pode editar diretamente seu caminho para execução de um serviço. Para isso você pode usar o comando sc,
Abra seu prompt de comando como administrador e digite o seguinte comando,
SC CONFIG ServiceName binPath= "Path of your file"
Por exemplo:
sc config MongoDB binPath="I:\Programming\MongoDB\MongoDB\bin\mongod.exe --config I:\Programming\MongoDB\MongoDB\bin\mongod.cfg --service"