Programme per Kommandozeile beenden

hier bitte nur *nach* Benutzen der Boardsuche (siehe oben) posten

Moderatoren: |Gordon|, Jean, Moderatoren

Benutzeravatar
likeatim
Gründer und Administrator
Beiträge: 2667
Registriert: 24.08.01, 13:01

Programme per Kommandozeile beenden

Beitrag von likeatim » 26.11.02, 22:55

Ich suche ein Tool oder einen Tip, um Programme und Services unter XP per Kommandozeile zu beenden.
Das irgendwie so aussähe
close c:\programme\myie2.exe
oder so ähnlich.
Ich hab schonmal mit "EndItAll" rumprobiert, dass lief aber nicht so und ist mir auch zu gross.
Hat jemand da was?
Wenn das auch für Services ging, wäre alles gut ;)

RIP
FALLEN MOD
Beiträge: 3009
Registriert: 19.12.01, 20:17

Beitrag von RIP » 26.11.02, 23:43

hier bitte sehr :D

http://thunder.prohosting.com/~ladi/e_cmd32.html#top

dl: http://thunder.prohosting.com/~ladi/cmdline.zip
GetVer
Description: GetVer displays the file version of one or more files.

Usage: getver filespec

Examples:

C:\> getver comctl32.dll
4.72.3611.1900 comctl32.dll

C:\windows> getver system/comctl*.*
4.72.3611.1900 system/COMCTL32.DLL
5.1.43.19 system/COMCTL32.OCX


Enum
Description: Enum displays list of all top-level windows.

Example:

C:\> enum
HWND PID PRIO TITLE
f4 -503397 NORM _Shell_TrayWnd
138 -473469 NORM _DigiClock32
194 -457605 NORM ENUM
134 -469725 NORM DeskTask
130 -467257 NORM StartButtonHook99
128 -459669 NORM Cool Mouse 97
124 -465157 NORM QuickRes
90 -514421 NORM Spooler Process
dc -503397 NORM Program Manager


EnumAll
Description: EnumAll enumerates all windows.

Usage: enumall [-c] [-s] [-h]

-c --classname Always display window classname.
-s --style Display window style.
-h --help Output this help.

Example:

C:\> enumall -c
N HWND PID TITLE (left,top,right,bottom)
1 f4 -503397 Shell_TrayWnd (-2,572,802,602)
2 f8 -503397 Button (2,576,44,598)
3 fc -503397 TrayNotifyWnd (727,576,798,599)
4 100 -503397 TrayClockWClass (797,577,797,597)
5 10c -503397 MSTaskSwWClass (48,576,723,598)
6 110 -503397 SysTabControl32 (48,576,723,598)
7 13c -473469 tooltips_class32 (0,0,10,10)
8 138 -473469 DigiClock32 (747,553,797,573)
... lot of stuff deleted


ps
Description: Displays list of all processes.

Usage: ps [-a] [-h] [pid]

-a --show-all-modules Show all modules.
-h --help Output this help.

Example:

C:\> ps
PID PRIO THR NAME
ffcfee1b high 13 4 c:\windows\system\kernel32.dll
fff83bcf norm 8 1 c:\windows\system\msgsrv32.exe
fff82a43 norm 8 2 c:\windows\system\mprexe.exe
fff8f15f idle 4 1 d:\win32\digiclk.exe
fff8d053 norm 8 1 d:\win32\desktask.exe
fff84d9b norm 8 1 c:\prgfiles\cmouse97\cmouse97.exe
fff8a0b7 norm 8 2 c:\windows\explorer.exe
fff8f3a7 norm 8 1 c:\windows\system\winoa386.mod
fff801f3 norm 8 1 d:\win32\hook\hook99.exe
fff9f937 real 24 2 c:\windows\system\ddhelp.exe
fffa3d37 norm 8 1 d:\src\cons\ps.exe


Kill
Description: Kill terminates process.

Usage: kill pid

Examples: kill -473469
kill 0xfff8c683


KillW
Description: KillW closes window.

Usage: killw [hwnd] [-c windowclass] [-t windowtitle]

Examples: killw 0x13c
killw 316
killw -c RegmonClass
killw -t "Pegasus Mail"


FreeRes
Description: FreeRes displays free system resources (win95/98).

Example:

C:\> freeres
USER: 76%
GDI: 88%


UpTime
Description: UpTime displays current time and time elapsed since Windows was started.

Example:

C:\> uptime
21:46:20 up 0 days, 3:48:27


RunScrn
Description: It's usable when you want to start your screensaver immediately.


TaskbarW
Description: Taskbarw changes the width of the taskbar buttons.

Usage: taskbarw pixels

Examples: taskbarw 120
taskbarw 0 (show only icons on the taskbar buttons)


RestartExplorer
Description: Restart explorer shell.


FileTime
Description: FileTime updates the timestamp of file(s).

Usage: [-v] [-h] [-c] [-m] filespec [-r filespec] [-t DDMMYYYYhhmmss]

-v verbose mode
-h output this help
-a change only the access time
-m change only the modification time
-r filespec use reference file's timestamp
-t datetime use DDMMYYYY[hhmm[ss]] timestamp
[i]Copying all or parts of a program is as natural to a programmer as breathing, and as productive. It ought to be as free. [/i] - RMS

RIP
FALLEN MOD
Beiträge: 3009
Registriert: 19.12.01, 20:17

Beitrag von RIP » 26.11.02, 23:49

[i]Copying all or parts of a program is as natural to a programmer as breathing, and as productive. It ought to be as free. [/i] - RMS

MannyMuster
2nd Founder
Beiträge: 1135
Registriert: 26.08.01, 11:57

Beitrag von MannyMuster » 27.11.02, 10:47

Hallo likeatim und cabal,

die PSTools von Sysinternals sind meiner Meinung nach am besten geeignet.

Benutzeravatar
likeatim
Gründer und Administrator
Beiträge: 2667
Registriert: 24.08.01, 13:01

Beitrag von likeatim » 27.11.02, 15:11

Danke für die Tips.
Aber ich hab noch ein paar Probleme:
- PSKill (Teil der PSTools): sehr effizient, sehr einfach, "pskill myie.exe" und Feierabend, aber das "killt" wirklich den Prozess und schliesst nicht das Fenster. MyIE verhält sich danach wie nach einem Programmabsturz ("Do you wanna resume last visited pages?"). Bei meinem Emailprogramm befürchte ich Schäden an der Mailbox.
- KillW (in der commandline.zip): Beendet das Programm normal, aber zu kompliziert in der Anwendung (Es muss der ganze Fenstertitel eingegeben werden, Wildcards gehen nicht).

Hm.

Benutzeravatar
taffit
Beiträge: 710
Registriert: 17.02.02, 15:18

Beitrag von taffit » 27.11.02, 15:41

Mittels eines AutoIt -Skripts (kann auch mit Parametern umgehen, als EXE kompilieren) und dem Befehl WinClose bzw. WinKill???
Könnte heute Abend eventuell entsprechende Skripts erstellen und dann zukommen lassen, wenn gewünscht...
Zuletzt geändert von taffit am 27.11.02, 15:42, insgesamt 1-mal geändert.
_________
taffit

Benutzeravatar
likeatim
Gründer und Administrator
Beiträge: 2667
Registriert: 24.08.01, 13:01

Beitrag von likeatim » 27.11.02, 17:50

sehr gerne:
ich kontaktiere dich per mail.
eine WinClose, die sich auf den Namen des Programms bezieht, wäre am besten.
Oder halt per Fenstername, dann aber mit Wildcards?

Vielen Dank!

Jean
Beiträge: 11491
Registriert: 30.10.01, 12:41

Beitrag von Jean » 27.11.02, 19:12

hi,

vielleicht geht auch closeall aus
http://www.aylott.com.au/winutils.htm
- zumindest kann man die Programme
festlegen, die _nicht_ geschlossen werden
sollen. Bin mir auch nichts sicher, ob es
was kostet ...

Jaen

Benutzeravatar
likeatim
Gründer und Administrator
Beiträge: 2667
Registriert: 24.08.01, 13:01

Beitrag von likeatim » 27.11.02, 23:48

@Jean
Doch, die kosten was
taffit hat mir ein paar Skripte zugesandt.
Feedback dann morgen ;)

Benutzeravatar
likeatim
Gründer und Administrator
Beiträge: 2667
Registriert: 24.08.01, 13:01

Beitrag von likeatim » 28.11.02, 7:42

@taffit
Dein Skript geht bei mir tadellos für alle geöffneten Fenster!
Man muss nur auf Gross-/Kleinschreibung achten.
Du kannst ja den Skriptinhalt hier veröffentlichen ;)
Danke nochmal!

Benutzeravatar
taffit
Beiträge: 710
Registriert: 17.02.02, 15:18

Beitrag von taffit » 28.11.02, 9:29

Freut mich, dass es bei dir klappt... 8)
Wenn es noch verbessert werden sollte (z.B. Überprüfung auf Parameter, schließen nicht nur mit Fenstertitel sondern auch Fenstertext (um z.B. bei mehreren Instanzen des IE die richtige zu treffen), anderen Icons, Eingabe über .ini-File, schließen aller Instanzen mit dem Titel etc.), schreibe mir eine Mail... Kann es dann nächste Woche erledigen...
Zuletzt geändert von taffit am 28.11.02, 9:31, insgesamt 1-mal geändert.
_________
taffit

Benutzeravatar
JumpinS
Beiträge: 534
Registriert: 29.06.03, 14:19

Beitrag von JumpinS » 29.10.03, 22:54

Is zwar nimmer so ganz aktuell, aber was ist schon ein Jahr *g*

http://www.beyondlogic.org/consulting/p ... ssutil.htm
Want a small command line utility to view, kill, suspend or set the priority and affinity of processes, perhaps from a batch file? . . Has a virus disabled your Task Manager? . . or perhaps your Administrator has?

The Command Line Process Utility will function even when the task manager is disabled and/or the dreaded "Task Manager has been disabled by your Administrator" dialog box appears.

Works on remote machines with the Microsoft Telnet Server (tlntsvr) found on Windows 2000 and XP or with BeyondExec for Windows NT4/2000/XP.
Auf der Seite findet sich nebenbei auch ein guter sendmail-ersatz für windows =)
Ich hasse Signaturen

Benutzeravatar
TengriLethos
Beiträge: 275
Registriert: 15.06.02, 18:15

Beitrag von TengriLethos » 30.10.03, 7:58

Das müsste auch mit dem kürzlich hier vorgestellten http://www.essential-freebies.de/board/ ... ht=prcview Prozessviewer gehen. Dieser kann mit der Option -c aufgerufen werden und sendet dann eine WM_CLOSE-Message an den gewünschten Prozess. Wildcards sind möglich, das Ding ist sehr klein, hat jede Menge Optionen und funktioniert bei mir prächtig.

Benutzeravatar
lubot
Beiträge: 331
Registriert: 04.06.02, 9:53

Beitrag von lubot » 30.10.03, 12:23

ab Windows XP gibts sowas schon von haus aus.

Code: Alles auswählen

TASKKILL [/S System [/U Benutzername [/P [Kennwort]]]]
         { [/FI Filter] [/PID Prozesskennung | /IM Abbildname] } [/T] [/F]

Beschreibung:
    Dieses Programm dient zum Beenden von Tasks über die Prozesskennung
    (PID) oder den Abbildnamen.

Parameterliste:
    /S   System              Remotesystem für die Verbindungsherstellung.

    /U   [Domäne\]Benutzer   Bestimmt den Benutzerkontext, unter dem der
                             Befehl ausgeführt wird.

    /P   [Kennwort]          Bestimmt das Kennwort für den Benutzerkontext.
                             Auslassung fordert zur Kennworteingabe auf.

    /FI   Filter             Filtert einen Satz von Tasks.
                             Ermöglicht das Verwenden von "*" , wie z. B.
                             imagename eq acme*

    /PID  Prozesskennung     Gibt die Prozesskennung des Prozesses an, der
                             beendet werden soll.
                             Verwenden Sie den Befehl TaskList, um die
                             Prozesskennung abzurufen.

    /IM   Abbildname         Bestimmt den Abbildnamen des Prozesses, der
                             beendet werden soll. Der Platzhalter * kann
                             zum Angeben aller Tasks bzw. Abbildnamen
                             verwendet werden.

    /T                       Beendet den angegebenen Prozess und alle
                             untergeordneten Prozesse.

    /F                       Erzwingt das Beenden des Prozesses.

    /?                       Zeigt diese Hilfe an.

Filter:
    Filtername    Gültige Operatoren        Gültige Werte
    ----------    ------------------        -------------------------
    STATUS        eq, ne                    RUNNING |
                                            NOT RESPONDING | UNKNOWN
    IMAGENAME     eq, ne                    Abbildname
    PID           eq, ne, gt, lt, ge, le    Prozesskennungswert
    SESSION       eq, ne, gt, lt, ge, le    Sitzungsnummer
    CPUTIME       eq, ne, gt, lt, ge, le    CPU-Zeit im Format:
                                            hh:mm:ss.
                                            hh - Stunden,
                                            mm - Minuten, ss - Sekunden
    MEMUSAGE      eq, ne, gt, lt, ge, le    Speicherverwendung (KB)
    USERNAME      eq, ne                    Benutzername im Format:
                                            [Domäne]\Benutzername
    MODULES       eq, ne                    DLL-Name
    SERVICES      eq, ne                    Dienstname
    WINDOWTITLE   eq, ne                    Fenstertitel

    HINWEIS
    -------
    1) Platzhalter * für die Option /IM kann nur bei Anwenden eines Filters
       verwendet werden.
    2) Das Beenden von Remoteprozessen wird immer erzwungen (/F).
    3) Die Filter "WINDOWTITLE" und "STATUS" werden bei der Angabe eines
       Remotecomputers
       nicht miteinbezogen.

Beispiele:
    TASKKILL /IM notepad.exe
    TASKKILL /PID 1230 /PID 1241 /PID 1253 /T
    TASKKILL /F /IM cmd.exe /T
    TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne unbenan*"
    TASKLIST /F /FI "USERNAME ne NT-AUTORITÄT\SYSTEM" /IM notepad.exe
    TASKKILL /S System /U Domäne\Benutzername /FI "USERNAME ne NT*" /IM *
    TASKKILL /S System /U Benutzername /P Kennwort /FI "IMAGENAME eq note*"
wie man sieht kann mal wildcards benutzen und auch dienste stopen.
ansonsten können dienste auch mit NET STOP beendet werden.

Benutzeravatar
likeatim
Gründer und Administrator
Beiträge: 2667
Registriert: 24.08.01, 13:01

Beitrag von likeatim » 30.10.03, 15:23

@mondlicht
Danke für den Tip! Man lernt nie aus, was das OS schon so alles kann.... ;)

Benutzeravatar
vorkoster
Mitglied
Beiträge: 1372
Registriert: 26.01.05, 6:56

Beitrag von vorkoster » 09.07.07, 8:28

Kennt jemand ein Tool für Windows 2000, mit dem das Beenden wildgewordener Prozesse erzwungen werden kann?

Im konkreten Fall läßt sich ein Prozeß mit pskill nicht sauber abschießen
(mit dem Windows-Taskmanager genausowenig).
"Alles ist möglich, aber nicht überall."
Angela Merkel

Benutzeravatar
Icfu
Mitglied
Beiträge: 1435
Registriert: 28.05.05, 3:29

Beitrag von Icfu » 09.07.07, 20:20

Wenn Du eine Malware auf dem Rechner hast, schießt man die mit mehreren Aufrufen eines Taskkillers ab, also sowas in der Art:

Code: Alles auswählen

:loop
taskkill /im bad.exe /f
goto loop
Wenn es sich um Malware handelt, die sich mittels mehrere Prozesse gegenseitig neu startet, muß die Batch auf alle Prozeßnamen ausgedehnt werden.

Wenn das nicht hilft, kannst Du auch das entsprechende Dateihandle schließen, per Unlocker, Process Explorer, o.ä., aber auch das ist nicht immer möglich...

Ansonsten beschreib mal etwas näher, um was für einen Prozeß es sich handelt, und was Du mit "wildgeworden" meinst.

Icfu
Holy Frankenfuck! Snakes!

xerces
regelmäßiger Besucher
Beiträge: 23
Registriert: 22.05.05, 13:48

Beitrag von xerces » 09.07.07, 20:42

auch wenn es für das eigentliche Problem zumindest eine Lösung zu geben scheint, möchte ich dennoch die Tools von nirsoft erwähnen.

Unter http://www.nirsoft.net/utils/nircmd2.html#using findest Du mehr dazu.

Gruesse

pensi
Mitglied
Beiträge: 290
Registriert: 22.05.05, 17:17

Beitrag von pensi » 07.05.09, 4:13

Hust, hust, 'tschuldigung, dass ich diesen alten Thread wieder ausgrabe. Ich habe dasselbe Anliegen, ich moechte ein paar Programme per Batch Datei schliessen. Ich habe etwas in den Programmen rumgestoebert und mit ProcessViewer herumgespielt, aber Programme, die im Tray sitzen, scheinen anders zu sein, z.B. Ac'tivAid. Wenn ich die Programme einfach 'kill process' beende, dann hab ich etwas Angst, dass dabei Daten verloren gehen koennen.

Irgendwelche Ideen? Danke!

Schoene Nacht noch,
pensi

Benutzeravatar
lubot
Beiträge: 331
Registriert: 04.06.02, 9:53

Beitrag von lubot » 07.05.09, 7:41

pensi hat geschrieben:Wenn ich die Programme einfach 'kill process' beende, dann hab ich etwas Angst, dass dabei Daten verloren gehen koennen.
Hallo pensi, da brauchst du keine Angst haben, so lange du nicht das Beenden erzwingst (z.B. Option /f bei taskkill.exe) werden die Programme normal beendet, als hättest du auf Schließen geklickt.

Beispiel:
Öffne Notepad, schreib was, aber speicher nicht ab
Dann taskkill.exe /IM notepad

Ergebnis:
Notepad fordert dich auf den Aktuellen Inhalt zu speichern und beendet sich nicht. Genau so als hättest du auf schließen geklickt.

Viele Grüße
Sebastian

Antworten