Script: Ritardare avvio dei programmi in esecuzione automatica
Alleggeriamo l’esecuzione automatica di Windows per rendere l’avvio del pc meno macchinoso
Nel nostro ambiente di lavoro abbiamo molte macchine lente e con l’avvento di Office 365 si sono rallentate ancor di più visto la mole di servizi e programmi da far avviare all’accensione del computer. Cercando una soluzione sul web mi sono imbattuto in questo articolo, che proponeva uno script batch con la lista dei programmi da avviare e uno script vbs, da inserire nella cartella di esecuzione automatica, per avviare il batch. Mi sembrava leggermente complesso e quindi ho creato un unico script vbs molto leggero che avvii i vari programmi con un ritardo preimpostato.
' Avvio ritardato ' ' http://itmaniac.it Andrea Cavazzi ver 1.1.0 '__________________________________________________________________ ' ritardo iniziale time1 = 25000 ' ritardo di avvio tra un programma e l'altro time2 = 12500 WScript.Sleep time1 'nome servizio da avviare 'strService = "XXXX" 'Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2") 'Set colListOfServices = objWMIService.ExecQuery ("Select * from Win32_Service Where Name ="_ '& strService & " ") 'For Each objService in colListOfServices ' WSCript.Sleep time2 ' objService.StartService() 'Next WScript.Sleep time2 set s = createobject("WScript.Shell") s.run "%LocalAppData%\microsoft\onedrive\onedrive.exe /background", 0 WScript.Sleep time2 s.run """%ProgramFiles(x86)%\Microsoft Office\Office16\lync.exe""", 0 WScript.Sleep time2 s.run """%ProgramFiles(x86)%\Microsoft Office\Office16\outlook.exe""", 0 WScript.Sleep time2 s.run """%ProgramFiles(x86)%\Mozilla Firefox\firefox.exe""", 0
Nello script ho inserito (commentato per non essere eseguito) anche la possibilità di avviare servizi, ricordando che non verranno avviati finchè lo user non fa login. Per quanto riguarda i programmi ho usato le variabili d’ambiente, se volete potete scoprirle qui:
- %LocalAppData% -> C:\Users\{username}\AppData\Local
- %AppData% -> C:\Users\{username}\AppData\Roaming
- %ProgramFiles(x86)% -> C:\Program Files (x86)
- %ProgramFiles% -> C:\Program Files
mentre di time1 e time2 sono espressi in millisecondi, quindi 25000 sono 25 secondi
Lo script funziona su qualsiasi client Windows, ricordando che è da personalizzare in base ai progammi che si vogliono in esecuzione automatica
Aggiornamento: i programmi il cui path contiene uno spazio, tipo %ProgramFiles(x86)%\Mozilla Firefox\firefox.exe bisogna inserire tre virgolette perchè possa essere eseguito e quindi “””%ProgramFiles(x86)%\Mozilla Firefox\firefox.exe”””