Google search feed for 15 September 2018:
PsSuspend
Werkzeug von PsTools
(Microsoft sysinternals
Utilities Pack)
Da es sich hierbei um ein offizielles Werkzeug handelt, ist es möglicherweise die beste Wahl für einfache Skripts und die Automatisierung.
Laufen PsSuspend mit einem Prozess - ID leitet sie den Prozess dieser ID auf dem lokalen Computer zu sperren oder wieder aufzunehmen. Wenn Sie einen Prozessnamen angeben, setzt PsSuspend alle Prozesse mit diesem Namen aus oder setzt sie fort. Geben Sie den Schalter -r an, um angehaltene Prozesse fortzusetzen.
Verwendungszweck: pssuspend [- ] [-r] [\\computer [-u username] [-p password]] <process name | process id>
Einfaches Programm mit Windows API: SuspendThread
undReasumeThread
Windows hat einige Funktionen zum Anhalten und Wiederherstellen von Threads (also einige Arten von Prozessen). Die kernel32.dll
Bibliothek bietet SuspendThread
und ReasumeThread
. Warnung! Es gibt auch 64-Bit-Entsprechungen für diese Funktionen Wow64SuspendThread
und Wow64ResumeThread
(ohne offizielle Dokumentation).
Es gibt eine nette, kleine Anwendung, die diese Technik auch in C / C ++ und CodeProject verwendet (Quellcode verfügbar).
Verwendung: pausep PID [/r]
( /r
Schalter setzt den Vorgang fort).
Es gibt auch eine Version in C # .NET für CodeProject.
Sehen Sie sich auch diese Stackoverflow-Antwort an
Benutzerfreundlichere Befehlszeilenmethode (Powershell) aus dieser Antwort:
Wie bereits erwähnt, verfügt die Windows-Befehlszeile nicht über ein Dienstprogramm, aber Sie können eine Windows-API-Funktion von PowerShell aus aufrufen. Installieren Sie zuerst das Invoke-WindowsApi-Skript, dann können Sie Folgendes schreiben:
Invoke-WindowsApi "kernel32" ([bool]) "DebugActiveProcess" @([int]) @(process_id_here)
Eine ähnliche Technik wurde zum Erstellen dieses PowerScript-Skripts verwendet, das für die Prozesspause erstellt wurde.