中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
« [1] [2] »
作者:
标题: [求助]ntsd关闭进程的问题? 上一主题 | 下一主题
tempuser
高级用户





积分 547
发帖 261
注册 2006-4-15
状态 离线
『楼 主』:  [求助]ntsd关闭进程的问题?

ntsd关闭进程的问题?
1,假设notepad.exe的PID是2328,我现在在DOS下执行以下命令是成功的:
ntsd    -c    q    -p    2328
但我在批处理这样运用它,却失败了:
@echo    off
set    /p    closeprocess=    请输入你要强制关闭的进程PID   
ntsd    -c    q    -p    "%closeprocess%"
goto :eof
错误提示如下:
Unable to find process '2328', HRESULT 0x80004002
    "不支持此接口"
ntsd: exiting - press enter ---
为什么?

2.另外,请教wmic  process   delete的具体用法,它的这个delete是否也是强制删除进程的,包括一些系统进程?

在线等待中......

2008-10-27 14:40
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 2 楼』:  


@echo off
tasklist|findstr /i "notepad.exe"
echo.
set /p closeprocess=请输入你要强制关闭的进程PID
ntsd -c q -p %closeprocess%




2008-10-27 14:59
查看资料  发短消息 网志   编辑帖子  回复  引用回复
tempuser
高级用户





积分 547
发帖 261
注册 2006-4-15
状态 离线
『第 3 楼』:  

执行后没有出错提示了,但不能关闭进程。
%closeprocess%加"%closeprocess%"没什么影响。

2008-10-27 15:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
tempuser
高级用户





积分 547
发帖 261
注册 2006-4-15
状态 离线
『第 4 楼』:  

为什么啊!
ntsd在DOS下好使,在批处理中却失败呢?
找了半天,有参数理解的收获,但就是不好使啊!

ntsd  -c  q  -pn   
c  :command
q  :quit
p  :pid
n  :processname
例:
ntsd  -c  q   -pn  notepad.exe

ntsd  -c q  -p  2696

2008-10-27 17:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
newsuper
新手上路

坚持学习



积分 18
发帖 15
注册 2008-10-18
状态 离线
『第 5 楼』:  

如果ntsd不行,试试taskkill啊,很好用的
taskkill /pid  xxx
一直用这个。

2008-10-27 23:17
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 6 楼』:  Re 4楼


@echo off
tasklist|findstr /i "notepad.exe"
echo.
set /p closeprocess=请输入你要强制关闭的进程PID
ntsd -c q -p %closeprocess%
tasklist|findstr /i "notepad.exe"
echo.
能否把你的结果贴出来看看?
这是我的:




2008-10-27 23:30
查看资料  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 7 楼』:  

用taskkill把ntsd结束掉^

ntsd结束进程有时候ntsd的窗口会停留,关闭才能结束



S smile 微笑,L love 爱,O optimism 乐观,R relax 放松,E enthusiasm 热情...Slore
2008-10-27 23:47
查看资料  发短消息 网志   编辑帖子  回复  引用回复
newsuper
新手上路

坚持学习



积分 18
发帖 15
注册 2008-10-18
状态 离线
『第 8 楼』:  

好像taskkill 在批处理中也不能用,以前只是在命令行用过。

2008-10-28 00:22
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 9 楼』:  Re 8楼

你听谁说的?还是亲自测试过?能把你的测试代码和结果贴出来看看么?



2008-10-28 00:32
查看资料  发短消息 网志   编辑帖子  回复  引用回复
newsuper
新手上路

坚持学习



积分 18
发帖 15
注册 2008-10-18
状态 离线
『第 10 楼』:  

不知道是不是电脑出了问题,还是程序有问题。
下面的 taskkill 在for循环批处理里不能使用。
for /f "tokens=1,2" %%i in ('tasklist.exe') do if %%i ==notepad.exe taskkill /pid %%j
但是 如果只有这一条的话:taskkill /im notepad.exe,却可以使用,就是不放在for循环里面。
还有其他的,感觉好像taskkill 不支持变量一样。
还望高人指点。

  今天又测试了一下,发现是程序的问题 应该把%%i==notepad.exe 改为"%%i"=="notepad.exe",就是加上引号。
  以下是测试程序,很简单的。
@echo off
start /min notepad.exe
for /f "tokens=1,2" %%i in ('tasklist.exe') do if "%%i"=="notepad.exe" echo %%j
set /p cp=请输入你要结束的进程的PID
taskkill /pid %cp%

[ Last edited by newsuper on 2008-10-28 at 19:10 ]

2008-10-28 00:54
查看资料  发短消息 网志   编辑帖子  回复  引用回复
tempuser
高级用户





积分 547
发帖 261
注册 2006-4-15
状态 离线
『第 11 楼』:  

我确实测试了很多遍,我也截了图,到我不会把图传上来,能告诉我怎么做吗?
我试试附件吧!有两个图

附件 1: 2.JPG (2008-10-28 07:59, 39.8 K)


2008-10-28 07:59
查看资料  发短消息 网志   编辑帖子  回复  引用回复
tempuser
高级用户





积分 547
发帖 261
注册 2006-4-15
状态 离线
『第 12 楼』:  

第2个,因为一直提示要输入的notepad.exe的PID,没办法,主动关闭了CMD窗口.
再重新进入到CMD下,执行
tasklist | findstr /i "notepad.exe"
看到notepad.exe还在那,没有关闭.我在座测试前运行的一个记事本文件也在任务栏下好好的呆着,根本没有关闭,所以我说ntsd的这段代码不好使.

我之所以没有用tasklist关闭进程,是因为我曾经看到过一些资料说:
ntsd能关闭一些tasklist无法关闭的进程.
这种说法对吗?

附件 1: 4.JPG (2008-10-28 08:04, 38.48 K)


2008-10-28 08:04
查看资料  发短消息 网志   编辑帖子  回复  引用回复
newsuper
新手上路

坚持学习



积分 18
发帖 15
注册 2008-10-18
状态 离线
『第 13 楼』:  我用ntsd结束了记事本程序

我用ntsd结束了记事本程序啊
方法跟我10楼的一样,只是把最后一句taskkill换成了ntsd了。不知道大家是什么结果?
@echo off
start /min notepad.exe
for /f "tokens=1,2" %%i in ('tasklist.exe') do if "%%i"=="notepad.exe" echo %%j
set /p cp=请输入你要结束的进程的PID
ntsd -c q -p %cp%

2008-10-28 19:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 14 楼』:  Re 12楼

你这个截图用的是6楼的代码么?



2008-10-28 20:51
查看资料  发短消息 网志   编辑帖子  回复  引用回复
tempuser
高级用户





积分 547
发帖 261
注册 2006-4-15
状态 离线
『第 15 楼』:  

回斑竹HAT:绝对用的是6楼的代码,结果正如我的贴图,不能关闭进程.

问newsuper:你能把你测试的过程贴图出来吗?我根本就不能关闭notepad.exe进程?

2008-10-29 10:49
查看资料  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: