Batch - minimize window while running a loop command (not start minimized)

Rakha picture Rakha · Jul 12, 2017 · Viewed 8.2k times · Source

I'm wondering if there is a way to minimize a batch window after it runs a certain command. I already know start /min and tricks to START the window minimized but what about while it's running a loop or timeout?

Let's say:

echo Hello!
timeout /t 100
:COMMAND TO MINIMIZE WINDOW WHILE TIMEOUT IS RUNNING

Right now i'm calling an autoit script in the bat file to hide the window while the command is running with :

WinSetState($application_name, "", @SW_HIDE) 

but i'm looking for a pure batch/powershell/vbs solution that can be coded directly in the .bat file.

Thank you for your time!

Answer

rojo picture rojo · Jul 12, 2017

Use PowerShell's invocation options, executing no command or script.

@echo off & setlocal

echo Hello!
powershell -window minimized -command ""
timeout /t 100
powershell -window normal -command ""

FWIW, -window hidden is also available if you wish.