Desligue um cliente de domínio automaticamente através do servidor

Desligue um cliente de domínio automaticamente através do servidor

então este aqui é de um novato, por favor, tenha paciência comigo.

Portanto, quero desligar os computadores conectados ao meu domínio automaticamente todos os dias às 16h15. Agora estou bisbilhotando e descobri que podemos fazer isso por meio do agendador de tarefas usando shutdown.exe

Até aí tudo bem, mas e se eu quiser exibir uma mensagem fofa que avisa o usuário que está logado naquele cliente, que o sistema será desligado em cerca de 5 minutos. Com base no que minha espionagem me diz, isso é possível usando VB. O problema é que literalmente não tenho ideia do que seja. Alguém poderia ter a gentileza de explicar do que se trata?

Obrigado se você chegou até aqui :)

Responder1

VB é a abreviatura de (Visual Basic Script), abaixo está o código para executar o VB para realizar sua tarefa.Referência de código

Etapa 1) Baixe um editor de texto para inserir seu códigoClique aqui

Etapa 2) Copie e cole o código abaixo no editor de texto

Etapa 3) CliqueArquivoentãoSalvar como-não clique em salvar ainda

Etapa 4) Certifique-se de terSalvar como tipoDefinido comoTodos os tipos

Etapa 5) Ligue para oNome do arquivo desligamento remoto.vbs-não se esqueça do .vbs!

Etapa 6) CliqueArquivoentãoAbra a pasta que contémentão cliqueExplorador

Etapa 7) Clique duas vezes no script que você acabou de criar!

Etapa 8) Quando o script perguntar a você"Executar ação em qual computador?"digite o nome do computador na rede que você deseja controlar.

Etapa 9) Resposta 2 para a próxima pergunta

Etapa 10) Encontre um site onde você possa aprender como codificar em VBScriptComeça aqui

Abaixo está o código para ir no notepad++

strComputer=InputBox("Perform action on what computer?","Enter Computer 
Name",strComputer)  

'if no computername is specified (blank), then quit  
If strComputer = "" Then WScript.Quit  

strComputer = UCase(strComputer)  


RestartMode = InputBox("I would like to perform the following action on " & 
strComputer & ":" & vbcrlf & vbcrlf _  
 & "0 - Restart " & strComputer & vbcrlf _  
 & "1 - Logoff " & strComputer & vbcrlf _  
 & "2 - Shutdown " & strComputer & vbcrlf _  
 & "3 - Do nothing " & vbcrlf _  
 & vbcrlf,"Restart action",RestartMode)  

If RestartMode = "" Then  
   wscript.quit  
ElseIf RestartMode < 0 or Restartmode > 3 Then  
   wscript.echo "You must select a valid option between 0 and 3.  Script will now 
exit."  
   wscript.quit  
End If  

'You could also remove the above lines and declare your variables like this:  
' strComputer = "computername"  
' RestartMode = 1  
'0 = restart, 1 = logoff, 2 = shutdown, 3 = do nothing  
'also, with a little work, you could easily make command-line arguments for this  

Call RestartAction  

Sub RestartAction  
   Dim OpSysSet, OpSys  

   Set OpSysSet = GetObject("winmgmts:{(Shutdown)}//"_  
    & strComputer & "/root/cimv2").ExecQuery("select * from Win32_OperatingSystem"_  
    & " where Primary=true")  

   'set PC to reboot  
   If RestartMode = 0 Then  

      For each OpSys in OpSysSet  
         opSys.Reboot()  
      Next  

   'set PC to logoff  
   ElseIf RestartMode = 1 Then  

      Const EWX_LOGOFF = 0  
      For each OpSys in OpSysSet  
          opSys.win32shutdown EWX_LOGOFF  
      Next  

   'set PC to shutdown  
   ElseIf RestartMode = 2 Then  

      For each OpSys in OpSysSet  
         opSys.Shutdown()  
      Next  

   'set PC to do nothing  
   ElseIf RestartMode = 3 Then  


   End If  
End Sub

informação relacionada