Ecco come fare:
Anzitutto devi scaricare PsExec (puoi seguire le istruzioni presenti in questo nostro articolo).
Crea poi un file vbs o bat da copiare sul PC remoto e lanciare. Io in questo caso uso un file AttivaDHCP.vbs che configura l’assegnazione automatica degli indirizzi IP con DHCP sul PC remoto. Queste le righe dello script AttivaDHCP.vbs:
strComputer = "."
Set objWMIService = GetObject(_
"winmgmts:\\" & strComputer & "\root\cimv2")
Set colNetAdapters = objWMIService.ExecQuery _
("Select * from Win32_NetworkAdapterConfiguration " _
& "where IPEnabled=TRUE")
For Each objNetAdapter In colNetAdapters
errEnable = objNetAdapter.EnableDHCP()
errEnable = objNetAdapter.SetDNSServerSearchOrder()
Next
Crea poi un file .bat ed inserisci nella sezione “Impostazione parametri fissi” il nome dell’utente amministratore, il percorso/nome del file dello script da copiare e lanciare sul PC remoto. Ecco lo script:
@echo off rem Impostazione parametri fissi rem ============================ SET UTENTEAMMINISTRATORE="MIODOMINIO\Administrator" SET PERCORSOSCRIPT="\\SERVER-01\Scripts" SET NOMESCRIPT="AttivaDHCP.vbs" echo Impostazione parametri variabili echo ================================ SET /P NOMEPC=[Inserisci il nome del PC]: SET /P PASSWORDADMIN=[Inserisci la password dell'utente %UTENTEAMMINISTRATORE%]: if "%PASSWORDADMIN%"=="NUL" goto NOPARAMETERS if "%NOMEPC%"=="NUL" goto NOPARAMETERS Set NOMEPC=NUL Set PASSWORDADMIN=NUL echo. echo. echo. echo Copio il file dello script sul PC %NOMEPC% echo ========================================== set STRINGAPSEXECCOPIA=cmd /c copy %PERCORSOSCRIPT%\%NOMESCRIPT% %public%\downloads psexec -u %UTENTEAMMINISTRATORE% -p %PASSWORDADMIN% \\%NOMEPC% %STRINGAPSEXECCOPIA% echo. echo. echo. echo Lancio lo script sul PC %NOMEPC% echo ================================ set STRINGAPSEXECLANCIA=cscript %public%\downloads\%NOMESCRIPT% psexec -u %UTENTEAMMINISTRATORE% -p %PASSWORDADMIN% \\%NOMEPC% %STRINGAPSEXECLANCIA% echo. pause Set PASSWORDADMIN=NUL Set NOMEPC=NUL goto FINE :NOPARAMETERS echo. echo ERRORE: Inserire il nome del PC e la PASSWORD DI ADMIN :FINE echo. echo ================= echo Fine elaborazione
Lo script dapprima copierà il file indicato nella variabile %NOMESCRIPT% nel percorso locale del PC %public%\downloads e poi lo lancerà. Per consentire i giusti permessi lo script chiederà la password dell’utente amministrativo indicato nella variabile %UTENTEAMMINISTRATORE%.
Otterrai:
Impostazione parametri variabili
================================
[Inserisci il nome del PC]: PC-001
[Inserisci la password dell'utente "MIODOMINIO\Admin"]: Mi@password.
Copio il file dello script sul PC PC-001
==========================================
PsExec v2.11 - Execute processes remotely
Copyright (C) 2001-2014 Mark Russinovich
Sysinternals - www.sysinternals.com
1 file copiati.
cmd exited on PC-001 with error code 0.
Lancio lo script sul PC PC-001
================================
PsExec v2.11 - Execute processes remotely
Copyright (C) 2001-2014 Mark Russinovich
Sysinternals - www.sysinternals.com
Microsoft (R) Windows Script Host Versione 5.8
Copyright (C) Microsoft Corporation 1996-2001. Tutti i diritti riservati.
cscript exited on PC-001 with error code 0.
Premere un tasto per continuare . . .
=================
Fine elaborazione

Ciao, volevo sapere se fosse possibile utilizzare questo sistema per permettere l’attivazione e disattivazione di un servizio di windows..
attendo notizie!
cmq ottima guida, grazie 🙂
Certo che puoi.
Ma ti consiglio di disattivare un servizio con il comando sc.exe. La sintassi è
sc [nomepc] config [nome servizio] [opzioni]
Ad esempio per disattivare il servizio “Centro Sicurezza PC” sul PC con nome WKS-01:
sc \\WKS-01 config wscsvc start= disabled
Poni attenzione al \\ prima del nome del PC e allo spazio dopo start=
grazie per la rapida risposta. ti spiego in breve cosa dovrei fare… sto installando in azienda un server wsus per gli aggiornamenti dei client.
il mio problema è che il servizio “windows update” sui client con windows 7 si prende parecchie risorse quando è in esecuzione rallentando i pc.
Io vorrei fare che il giorno X all’ora Y partono gli aggiornamenti tramite wsus e far attivare su tutti i client tramire script, gpo, o quello che sia il servizio… e farlo disattivare al termine degli aggiornamenti. credi sia possibile una cosa del genere? sono aperto a qualsiasi soluzione 🙂
grazie infinite
Anzitutto metti il servizio Windows Update in avvio manuale su tutti i PC.
Poi crei un’operazione pianificata che lancia uno script con all’interno tante righe quanti sono i PC; ogni riga avvia il comando “sc \\nomepc start wuauserv” per avviare il servizio.
Grazie mille!
come posso contattarti in privato? vorrei chiederti alcuni consigli! grazie.