Portanto, quero desabilitar ou habilitar um serviço dependendo de qual usuário faz logon, pois é um serviço que só precisa estar ativo para um usuário específico e, caso contrário, consome recursos desnecessários do sistema.
A maneira mais fácil seria criar um arquivo em lote por usuário (é um sistema local, portanto não há muitos usuários) e executar esse arquivo em lote quando um usuário fizer logon usando net stop/start ou sc config. O problema com essa abordagem é que esses comandos exigem privilégios elevados e um dos usuários não possui privilégios elevados.
Existe outra maneira de fazer isso ou existe uma solução alternativa para conceder temporariamente direitos elevados a um arquivo em lote?
Obrigado.
Responder1
Você pode usar uma tarefa agendada para contornar o problema de privilégios elevados.
Para cada usuário final:
- Inicie o Agendador de Tarefas e crie uma nova tarefa (selecione "Criar Tarefa" à direita)
- Na guia Geral, defina a tarefa para ser executada em sua própria conta (admin), esteja logado ou não, e com os privilégios mais altos
- Na guia Gatilhos, adicione um gatilho "No logon" e configure a conta do usuário final
- Na guia Ações, adicione uma ação "Iniciar um programa" e forneça a linha de comando que deseja executar ("nome do serviço NET STOP" ou "nome do serviço NET START").
- Salve sua nova tarefa agendada.
Quando um de seus usuários finais fizer login, o Agendador de tarefas executará NET START/STOP em sua conta de administrador, iniciando ou interrompendo o serviço sem exigir privilégios elevados no ponto de login.
Algumas perguntas para você: O que acontece se ambos os usuários finais fizerem login? Você obtém o resultado correto em todas as sequências de login (ou seja, usuário A e depois B e usuário B e depois A)? Não se esqueça de considerar as sequências de logout também...
Responder2
Os serviços estão agindo da mesma forma em todas as contas de usuário....então, ao desabilitar um arquivo em lote, isso afetará o outro usuário (administrador, por exemplo)...conta....então, criar outra conta não vale nada :(.. .tente apenas criar 2 arquivos em lote. Um para parar e outro para começar... estou surpreso que o Windows não possa ter uso de serviço diferente para diferentes usuários e necessidades... estou desapontado...