定时启动和关闭指定程序的方法,结束普通方法无法结束的进程www.bifa365.com

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

原文一:

相信大家都有用命令行(CMD)解决问题的习惯,起码我感觉自己在处理Windows系统故障时越来越离不开Windows
PE了,今天我想介绍两个很实用的命令:Tasklist与Tskill。
命令:Tasklist 
功能:命令用来显示运行在本地或远程计算机上的所有进程,可以监控用户的操作。 
命令格式: 
Tasklist [/S system [/U username [/P [password]]]] [/M
[module] | /SVC | /V] [/FI filter] [/FO format] [/NH] 
参数含义 
/S system  指定连接到的远程系统。 
/U [domain\]user 指定使用哪个用户执行这个命令。 
/P [password]  为指定的用户指定密码。 
/M [module] 
列出调用指定的DLL模块的所有进程。如果没有指定模块名,显示每个进程加载的所有模块。 
/SVC 显示每个进程中的服务。 
/V 显示详细信息。 
实例分析: 
如果我们只是查看本地主机进程信息,直接办入命令即可。下面的实例是从客户机远程查看内网中某台主机时程信息。 
假如我们有一台服务器: 
内网地址:192.168.0.1, 
管理员帐号:administrator 
管理员密码:password 
我们需要在CMD窗口输入: 
Tasklist /s 192.168.0.1 /u administrator /p password 
这条命令可以使我们方便的查看到远程主机的运行情况,当然前提是保证RPC服务正常启动。

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

计划任务可以设置定时执行程序。但却没有定时关闭程序的功能。

命令:tskill

  功能:用来关掉进程的 
命令格式: 
TSKILL processid | processname [/SERVER:servername] [/ID:sessionid |
/A] [/V] 
参数含义 
processid 要结束的进程的 Process ID。 
processname 要结束的进程名称。 
/SERVER:servername 含有 processID 的服务器(默认值是当前值)。 
使用进程名和 /SERVER 时,必须指定 
/ID 或 /A 
/ID:sessionid 结束在指定会话下运行的进程。 
/A 结束在所有会话下运行的进程。 
/V 显示正在执行的操作的信息。 
这个Tskill用法很简单,直接输入Tskill 图象名或PID就可以了。 

两种方法

可以用ntsd 命令关闭, ntsd从Windows
2000开始就是系统自带的进程调试工具,在system32目录下。NTSD的功能非常的强大,用法也比较复杂,但如果只用来结束一些进程,那就比较简单了。

命令:ntsd

偶尔碰上Tskill无法结束的进程,还可以试试Ntsd命令,只有System、SMSS.EXE和CSRSS.EXE不能杀。前两个是纯内核态的,最后那个是Win32子系统,ntsd本身需要它。ntsd从2000开始就是系统自带的用户态调试工具。被调试器附着(attach)的进程会随调试器一起退出,所以可以用来在命令行下终止进程。使用ntsd自动就获得了debug权限,从而能杀掉大部分的进程。ntsd会新开一个调试窗口,本来在纯命令行下无法控制,但如果只是简单的命令,比如退出(q),用-c参数从命令行传递就行了。NtsdNtsd
按照惯例也向软件开发人员提供。只有系统开发人员使用此命令。有关详细信息,请参阅
NTSD 中所附的帮助文件。用法:开个cmd.exe窗口,
如果你不知道进程的ID,任务管理器->进程选项卡->查看->选择列->勾上”PID(进程标识符)”,然后就能看见了。

格式为: ntsd -c q -pn {进程名} 
参数含义: 
-c是表示执行debug命令; 
q表示执行结束后退出; 
-p 表示后面紧跟着是你要结束的进程对应的PID; 
-pn 表示后面紧跟着是你要结束的进程名;

1、根据端口查找进程、杀死进程: netstat -ano | find “8080”

C:\Documents and Settings\keju.wangkj>netstat -ano | find "8080" 
TCP    0.0.0.0:8080           0.0.0.0:0              LISTENING       5796 
C:\Documents and Settings\keju.wangkj>tskill 5796 

2、如果你不知道进程的ID,任务管理器->进程选项卡->查看->选择列->勾上”PID(进程标识符)”,然后就能看见了。

 出处:

=========================================================================

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

举例:

cmd下命令杀进程的几个方法

1、用taskill命令
①taskkill /f /im 进程名称
示例:用taskkill /f /im
VStart.exe命令关闭音速启动,VStart.exe就是音速启动的进程名称

②taskkill /pid[进程码] -t(结束该进程)
-f(强制结束该进程以及所有子进程)
注:有两种方法查进程的PID码:
①在命令行下用 tasklist 命令查出进程的PID号码,就是这些

②在任务管理器中的查看选项中选择选择列中勾先PID那一项

示例:举个关闭迅雷的例子,先找出迅雷的PID码2552
taskkill /pid 2552 -f,就是这个指令

2、用 wmic process Where name=”进程名称”
call terminate 这个不需要知道进程的PID号
示例:
wmic process Where name=”iexplore.exe” call terminate 关闭IE浏览器,
3、ntsd -c q -p [pid进程码]
示例:还是举个关闭迅雷的吧,同样先找出迅雷的PID码2724
ntsd -c q -p 2724 是这条指令!

出处:

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

每天8–10点用winwap播放音乐。

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

1、播放。设置计划任务,每天8时定时启动winamp.exe(winamp程序有启动即播放列表的功能),也可以用at命令定时启动。

@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

2、关闭。建一个over.bat文件,内容:ntsd -c q -pn winamp.exe
,设置计划任务,10点定时执行。

 

……………………………………………………………………………………………………………………………………………………

 

原文二:

 

代码如下:

 


参考:

@ping 127.1 -n 5 >nul

@taskkill /f /IM TTPlayer.exe

 


这个代码是延时5秒关闭千千静听,“TTPlayer.exe”是千千静听,你可以更换。

批处理:把上面两行代码写入记事本,另存为bat格式即可。

 

2、定时关闭指定程序

运行中输入:

at 8:50 ntsd -c q -pn TTPlayer.exe

解释:8:50结束“TTPlayer.exe”进程,即关闭千千静听。

当然也可以写为批处理:把“at 8:50 ntsd -c q -pn
TTPlayer.exe”写入记事本,另存为bat格式即可。

 

at 23:10 shutdown -a定时关机

 

at 19:05 taskkill /im cmd.exe /f

 

at 19:26 taskkill -im 锐捷共享助手v1.1.exe -f

 

at 19:43 ntsd -c q -pn 锐捷共享助手v1.1.exe

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website