Situation
- I use a Windows 10 system at work.
- I have a set of programs I'd like loaded all at the same time so I don't have to click click click every morning to start them.
- The company provides the laptop. The laptop loads lots of necessary networking and security programs as Windows boots up. I don't want the programs I load to interfere with them.
- The standard way to start these files is to put their shortcuts into Windows' Startup folder in the Programs group. But the Startup folder went missing from Windows 10's Start menu.
- I can find the Startup folder anyway. Nice try, Microsoft!
- But if I load the folder with tons of shortcuts, then they all get loaded one after the other, higgledy-piggledy. In the old days, Windows preferred staggering program loads so they weren't all contending for resources at the same time. Not sure how Windows manages it nowadays, but I like the neatness of loading apps one at a time.
Solution
- As ever, the humble batch file. (See the Resources at the end of this post.)
- It's simple enough to find the location of the executables I want to run, but I also wanted to add a pause of 5 seconds between each loading. That gives Windows time to dedicate any resources needed to load the program, and then free up any resources it needs to load the next program.
- After hunting around on the InterWebz, I found a command to do just that. It's explained in the code excerpt and a link in the Resources.
- I keep helper files like this in a special directory for my batch files. I create a shortcut of the batch file and put the shortcut on my desktop. Not necessary, I guess, but I prefer keeping shortcuts and not active files on my desktop.
How I use it
- I boot up the laptop and let the company-approved programs load and do their thing.
- After that activity has quieted down, I double-click the batch file shortcut on my desktop.
- After the batch file finishes running, I start my workday.
My startup batch file
@echo off
:: source: https://www.computerhope.com/issues/ch001678.htm
:: to add a pause, insert CHOICE /N /C YN /T 5 /D Y >NUL
:: Using the choice command included with these versions of Windows you can delay a batch file anywhere from 0 to 9999 seconds.
:: In this example, we illustrate a five-second delay. If you want to increase or decrease this time change the “5” to a different value.
:: evernote
start “C:UsersuseridAppDataLocalAppsEvernoteEvernote” Evernote.exe
CHOICE /N /C YN /T 5 /D Y >NUL
:: firefox
start “C:UsersuseridAppDataLocalMozilla Firefox” firefox.exe
CHOICE /N /C YN /T 5 /D Y >NUL
:: outlook
start “C:Program Files (x86)Microsoft OfficerootOffice16” OUTLOOK.EXE
CHOICE /N /C YN /T 5 /D Y >NUL
:: workrave
start C:UsersuseridDocumentsApplicationsWorkravelibWorkrave.exe