来自 金沙澳门官网网址 2019-09-11 14:00 的文章
当前位置: 金沙澳门官网网址 > 金沙澳门官网网址 > 正文

结束普通方法无法结束的进程,bat定时自动关机

 使用ntsd程序 (如果安装过VS,在VS的安装目录下,比如“C:Program Files (x86)Debugging Tools for Windows (x86)ntsd.exe”,也可以在这里下载)

**自动结束程序 

ntsd -c q -p PID
ntsd -c q -pn PName

*ntsd 是一条dos命令,功能是用于结束一些常规下结束不了的死进程。
用法为打开cmd 后输入以下命令就可以结束进程:
方法一:利用进程的PID结束进程
命令格式:ntsd -c q -p pid
命令范例: ntsd -c q -p 1332 (结束explorer.exe进程)
范例详解:explorer.exe的pid为1332,但是如何获取进程的pid呢?在CMD下输入TASKLIST就可以获取当前任务管理器所有进程的PID
方法二:利用进程名结束进程
命令格式:ntsd -c q -pn
**.exe (***.exe 为进程名,exe不能省)
命令范例:ntsd -c q -pn explorer.exe

两种方法

另外的能结束进程的DOS命令还有taskkill:
命令格式: taskkill /pid 1234 /f ( 也可以达到同样的效果。)

一种是使用进程的ID号,将PID换成对应进程ID号即可

比较常用,比如: taskkill /f /im Explorer.exe (关闭Explorer.exe进程)

一种是使用进程的名称,将PName换成对应的exe名字即可,比如notepad.exe

例如:
TASKKILL /S system /F /IM notepad.exe /T
TASKKILL /PID 1230 /PID 1241 /PID 1253 /T
TASKKILL /F /IM notepad.exe /IM mspaint.exe
TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*"
TASKKILL /F /FI "USERNAME eq NT AUTHORITYSYSTEM" /IM notepad.exe
TASKKILL /S system /U domainusername /FI "USERNAME ne NT*" /IM *
TASKKILL /S system /U username /P password /FI "IMAGENAME eq note*"

为了方便,写了个批处理,将该批处理和ntsd放在一起,使用时执行批处理,选择对应的方式,并输入参数即可。

taskkill /f /im TEL.exe
taskkill /f /im MT.exe
taskkill /f /im EastFaxServer.exe
金沙澳门官网网址 ,taskkill /f /im EastFaxExtPrinter.exe
taskkill /f /im EastFaxService.exe
net stop mssqlserver

@ECHO OFF
TITLE 结束使用普通方法无法结束的进程
COLOR 0A
MODE con: COLS=62 LINES=22

:MENU
set tm1=%time:~0,2%
set tm2=%time:~3,2%
set tm3=%time:~6,2%
ECHO.  %date% %tm1%点%tm2%分%tm3%秒 
ECHO.   ========================================
ECHO.   请选择要进行的操作,然后按回车
ECHO.   ────────────────────
ECHO.  1    根据进程号PID结束进程
ECHO.  2    根据进程名称结束进程

ECHO.  0    退出
ECHO.
ECHO.请输入选择项目的序号:

set /p choose=
if "%choose%" equ "" goto MENU
if %choose%==1 goto killusingpid
if %choose%==2 goto killusingname
if %choose%==0 goto END

ECHO. 输入错误,请输入正确的项目序号:
goto MENU

:killusingpid
set choose=
ECHO.请输入进程号PID,然后按回车
set /p proid=
set /a i=0
:kpid
ntsd -c q -p %proid%
if %i% GEQ 10 ( ( echo 结束进程%proid%失败 ) & goto MENU )
set /a i=%i%+1
echo 结束进程%proid%第%i%次
tasklist | findstr /i %proid% && ( goto kpid )
echo 结束进程ID为%proid%的程序成功或进程ID:%proid%不存在
GOTO MENU

:killusingname
set choose=
ECHO.请输入进程的名称(比如notepad.exe),然后按回车
set /p proname=
set /a i=0
:kpname
ntsd -c q -pn %proname%
if %i% GEQ 10 ( ( echo 结束程序%proname%失败 ) & goto Menu )
set /a i=%i%+1
echo 结束程序%proname%第%i%次
tasklist | findstr /i %proname% && goto kpname
echo 结束程序%proname%成功或程序:%proname%未启动

GOTO MENU

:END
exit

 **自动关机

本文由金沙澳门官网网址发布于金沙澳门官网网址,转载请注明出处:结束普通方法无法结束的进程,bat定时自动关机

关键词: