Afslutning af programmer ved hjælp af TASKKILL

Nogle gange kan vi komme ud for at nogle programmer eller vinduer ikke bare gider lukke ned. For at lukke hele processen eller bare vinduet benytter vi her som regel joblisten til at lukke det ned. Under Processer-fanen finder vi her et par kolonner. Men som standard vises processernes PIDs ikke, hvilket tit ikke er en fordel. Ved installation eller fjernelse af programmer kan du komme ud for at installationsprocessen kræver at du lukker nogle programmer den angiver, og her angiver den også tal, som er et unikt tal for processen. Hvis du gerne vil tilføje denne kolonne med PIDs gøres følgende:

  1. Tryk Ctrl+Shift+ESC, for at åbne Windows Jobliste
  2. Vælg Processer-fanen
  3. Klik på Vis-menuen og vælg Vælg kolonner.
  4. Marker PID (Process Identifier)
  5. Klik på OK-knappen

Efterfølgende vil din Jobliste komme til at se således ud:

Og, jeg vil nu hurtig kunne finde frem til, hvilken proces der skulle lukkes. Udover denne kolonne finder du også mange andre kolonner med forskellige informationer, f.eks. Kommandolinje som viser, hvordan processen blev kørt. De forskellige kolonner kan du tilføje på samme måde som med PID.

En helt anden måde du kan lukke programmer eller enkelte vinduer på, er ved at benytte dig af kommandoen TASKKILL i f.eks. en Kommandoprompt. Med denne kan du med det samme angive, hvad du vil have lukket. Det kan være ved enten at angive procesnavnet eller ved at angive PID, samt på mange andre måder. En anden ting man kan med denne, er at benytte sig af filtre.

Den simpleste kommandosyntaks for TASKKILL, når du vil lukke et program, er ved at angive dets procesnavn. En lukning af Notesblok ville da være:

TASKKILL /IM notepad.exe

Ved fuldførelse vil et afslutningssignal blive sendt til alle åbne notesblokke. Det vil f.eks. også betyde at du kan blive bedt om du vil gemme eller ej. For helt at undgå dette, du dermed ikke ønsker at gemme, kan du gennemtvinge lukningen, ved hjælp af argumentet /F. Altså:

TASKKILL /IM notepad.exe /F

Nu spørger du nok dig selv, hvordan du så finder ud hvilke processer du har kørende ved hjælp af Kommandoprompt. Skriv TASKLIST, og du vil få dem vist.

Som jeg fortalte i starten kunne det være at vi ønskede at lukke en proces med et bestemt PID. Her vil vores kommandosyntaks være:

TASKKILL /PID xxxxx

Hvor xxxxx er det unikke tal. En helt anden måde at lukke processer ved, er ved hjælp af filtre. Et filter angives her ved hjælp af argumentet /FI. Og angives generelt på følgende metode:

TASKKILL /FI "FILTER MED INDSTILLINGER"

Der findes en række forskellige filtre, som du kan benytte. Hvis f.eks. du i proceslinjen kan se et vindue med navnet “Dokument 1 – Microsoft Word”, kan du benytte dig af WINDOWTITLE-filteret, hvormed du angiver titlen på vinduet. Og når du har med navne at gøre, kan du også benytte jokertegn(*):

TASKKILL /FI "WINDOWTITLE eq Dokument 1*" /F

Læg her mærke til at eq benyttes, for at angive at titlen skal være lig med “Dokument 1*”. De forskellige filtre som er tilgængelige er disse:

Filtre:
    Filternavn    Gyldige operatører        Gyldige værdier
    ----------    ------------------        ---------------
    STATUS        eq, ne                    KØRER (RUNNING) | UKENDT (UNKNOWN)
                                            SVARER IKKE (NOT RESPONDING)
    IMAGENAME     eq, ne                    Procesnavn
    PID           eq, ne, gt, lt, ge, le    PID-værdi.
    SESSION       eq, ne, gt, lt, ge, le    Sessionsnummer.
    CPUTIME       eq, ne, gt, lt, ge, le    CPU-tid i formatet
                                            tt:mm:ss.
                                            tt - timer,
                                            mm - minutter, ss - sekunder
    MEMUSAGE      eq, ne, gt, lt, ge, le    Hukommelsesforbrug i KB
    USERNAME      eq, ne                    Brugernavn i formatet
                                            [domæne\]bruger

    MODULES       eq, ne                    DLL-navn
    SERVICES      eq, ne                    Navn på tjenesten
    WINDOWTITLE   eq, ne                    Vinduestitel

        eq: lig med                     ne: ikke lig med
        gt: større end                  lt: mindre end
        ge: større end lig med          le: mindre end eller lig med

Så, hvis du f.eks. vil lukke alle programmer som benytter sig af en bestemt dll-fil, gøres dette ved hjælp af MODULES-filtret :

TASKKILL /FI "MODULES eq xxx.dll" /F

Du kan også angive du vil lukke processer som benytter mere end 90MB:

TASKKILL /FI "MEMUSAGE gt 90000" /F

Alle de forskellige filtre kan også kombineres. Så, hvis du f.eks. at du ikke ønsker at explorer.exe, men alt andet som benytter mere en 90MB hukommelse, kan MEMUSAGE- og IMAGENAME-filtret benyttes på samme tid:

TASKKILL /FI "MEMUSAGE gt 90000" /FI "IMAGENAME ne explo*" /F

- Peter Sandberg Brun

14 kommentarer til “Afslutning af programmer ved hjælp af TASKKILL”


  1. 1 Marcus

    Hej Peter.

    Jeg har et lille problem, når jeg trykker CTRL+SHIT+ESC, så kommer der ingen jobliste?
    Da jeg havde XP virkede denne kommando fint, men nu virker den ikke mere? Og hvis jeg trykker CTRL+ALT+DEl, så kan jeg ikke vælge Joblisten?

  2. 2 Peter Brun

    @ Marcus

    Det kan være at Joblisten er blevet deaktiveret for din bruger. Hvis dette er meningen kan du sikkert ikke gøre noget ved det. Men hvis du har alt kontrol over Windows, så kan du tjekke under:
    1. Skriv i Start søgning: regedit
    2. ENTER
    3. Naviger frem til:
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\
    Policies\System
    4. Sørg her for at slette værdien “DisableTaskMgr”, hvis den findes.

    Hvis der her ikke kan åbne Regedit, betyder det at du ikke har adgang til det.

  3. 3 Fuchsia2

    der er også denne mulighed, at højre-klik på proceslinien og vælg: jobliste

  4. 4 Peter Brun

    @ Fuchsia2

    Hvis det er til ovenstående, hvor Marcus ikke kan få adgang til åbne Joblisten, vil man fra proceslinjen også få adgang nægtet ved åbning af Joblisten herfra (og hvis blokeringen er sat ved hjælp gpedit.msc, vil den også være grået ud). Det samme gælder ved kørsel af Taskmgr.exe, som normalt også vil åbne Joblisten.

  5. 5 René

    Hej,

    Jeg har prøvet at lave en batch-fil til at lukke MSN-messenger med. Det virker fint i Vista, men giver ingen respons i XP.

    Har skrevet følgende:
    TASKKILL /IM msnmsg.exe /F

    Har også prøvet med PID, hvilket gav samme resultat. (Med og uden /F)

    Har du en idé om hvad problemet kunne være?

  6. 6 Peter Brun

    @ René

    Prøv at tjekke det du skrev. Vil tro du mangler et “r”:
    TASKKILL /IM msnmsgr.exe /F

    Ellers hvis du havde dette, prøv da at se hvad Windows siger til det, hvis du skriver det i en almindelig kommandoprompt.

  7. 7 Michael

    Hej Peter

    Jeg får en kommando prompt frem og skriver f.eks.

    Taskkill xxxx.exe

    Så kommer der en fejl der siger kommando ikke er genkendte som en intern, ekstern kommando, et program eller en batch fil????

    Det samme sker når jeg prøver med TASKLIST ???

    Nogen Ideer?
    Vh Michael

  8. 8 Peter Brun

    @ Michael

    Hvis det er en Windows XP Home Edition du prøver er taskkill desværre ikke inkluderet i denne version. Brug her i stedet for den mindre avancerede kaldet tskill. Den har syntaksen:
    TSKILL procesnavn

    Det vil sige hvis du vil lukke foo.exe, indtast da:
    tskill foo

    Bemærk at det skal være uden endelsen .exe. Indtast tskill -? for hjælp. Jeg mener ikke der er en tilsvarede for tasklist.

  9. 9 Morten

    hejsa :)

    jeg har et lille problem for min jobliste vil kun vise den 1. side Altså den med hva jobs jeg er igang med. og jeg kan kun lukke den ned med esc for der er ikk et X i hjørnet eller noget andet..

    hvad gør jeg :)

  10. 10 Peter Brun

    @ Morten

    Dobbeltklik på de grafer du ser, så kommer du ud af det.

  11. 11 Morten

    ÅÅÅH TAK :D

    nu virker det :D MANGE tak for hjælpen

    (vendelbo)..xD

  12. 12 Anders

    Hej Peter.
    Jeg har prøvet at installere drivers til min nye HD DVD Maker som jeg har købt på ALDI. Jeg får dog en boks, som siger at den ikke kan finde taskkill. Hvordan får jeg fat på dette program?
    Jeg har XP Home Edition.
    Vh. Anders

  13. 13 Peter Brun
  14. 14 hansen

    taskkill kan også gøres ved at man opretter “ny genvej” > skriver taskkill /IM iexplore.exe /f /t > gemsom Luk IE >afslut. Højreklik på genvejen > egenskaber > genvejstast > skriv Ctrl+Alt+k.genvejen kan stlles til proceslinien.

Skriv en kommentar