Batch liste åbne vinduer

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg forsøger at skrive en windows batch-fil, der vil udskrive og udføre en kommando, hvis et vindue er åbent på systemet. Jeg kan gøre det med en proces, men det er ikke den effekt, jeg vil have. Jeg vil gerne vide, om et vindue er åbent, så tryk så åbent, hvis det ikke gør noget. Hvis der er en måde at jeg kan gøre, så lad mig det vide. Bedre beskrivelse er, når du åbner taskmanager, og den første fane viser åbne vinduer. Jeg vil bare have en liste over disse vinduer og derefter derfra søger du bare efter et program som googlechrome.exe


Tak alt i avanceret!

Bedste reference


For at se, hvilke eksekverbare filer der kører fra kommandolinjen, brug: tasklist.exe. Dette gør det muligt at filtrere på en WINDOWTITLE attribut også. Ud over det kan du være ude af lykke.


Eksempel for at se om en instans med untitled notepad kører:


tasklist /FI "WINDOWTITLE eq Untitled - Notepad"


Du kan bruge dette inde i en batchfil som følger:


FOR /F "tokens=* USEBACKQ" \%\%F IN (`tasklist /FI "WINDOWTITLE eq Untitled - Notepad" ^| find/c "exe"`) DO (
SET windowcount=\%\%F
)

echo \%windowcount\%

if "\%windowcount\%"=="0" (
echo no windows!
) ELSE (
echo \%windowcount\% windows found!
)