Jak z příkazového řádku zabít aplikaci

23. 3. 2016, Vladimír Klaus, přečteno 1036x

MS Outlook
Systém
Windows

Občas je třeba ukončit nějakou aplikaci, a to bez ohledu na cokoliv. Tedy i pokud se nějak brání, například potvrzovacím dialogem nebo ji někdo drží apod. Slouží k tomu jednoduchý příkaz taskkill. Má docela dost parametrů, viz odkazy na konci článku, ale my zde použijeme jen to základní.

Konkrétní příklad, kde se to opravdu hodí, je ukončení MS Outlooku 2016. Ten se, na rozdíl od verze 2010, chová totiž jinak a pokud kupříkladu instalujete nějaký add-in, který je již používán, instalátor si s tím neporadí a Outlook nedokáže ukončit.

Napíšeme si tedy malou dávku

@echo off
taskkill /IM outlook.exe
pause

Parametr /IM znamená "image" neboli název souboru/procesu, který chceme ukončit. Výsledkem je ukončení aplikace, pokud běží, případně hlášení, že takový proces neexistuje.

Jak z příkazového řádku zabít aplikaci, 1

Pokud jste si toto vyzkoušeli, ale měli zobrazen Outlook a ještě třeba otevřený e-mail nebo kontakt, asi jste zjistili, že se zavřelo jen jedno okno a ostatní zůstalo. Důvodem je to, že vlastně jede "více Outlooků", přesněji více procesů vyvolaných Outlookem.

Jak z příkazového řádku zabít aplikaci, 2

Jak ukončit opravdu vše? Do parametrů přidáme /F, což způsobí vynucené zavření opravdu všech odpovídajících procesů.

@echo off
taskkill /F /IM outlook.exe
pause

Zavření může chvíli trvat, a proto pokud potřebujete třeba spustit onu instalaci, je dobré vložit menší prodlevu, např. 3 vteřiny.

@echo off
taskkill /F /IM outlook.exe
timeout 3 > NUL
setup-myaddin-1.0.1.exe /verysilent
pause

Teď už by mělo vše projít bez jakéhokoliv problému. Ovšem než podobnou dávku nasadíte, je třeba si uvědomit, že násilným ukončením Outlooku přijdete bez varování i o rozepsaný e-mail či upravovaný kontakt.

Více informací