Board logo

标题: 如何写一个在win98下的dos下结束进程的小命令程序? [打印本页]

作者: suiyuanye     时间: 2006-6-10 13:34    标题: 如何写一个在win98下的dos下结束进程的小命令程序?

我需要一个在能在win98的dos下运行结束进程的小命令,怎么写?在2000个XP下可以用taskkill命令和pskill命令,但是98的dos下不支持这个命令,高手帮一下。

例如,要结束进程 tor.exe
作者: asbai     时间: 2006-6-10 14:52
procview里带了一个Win32命令行界面的工具。

要自己写的话也不复杂,相关API包括:EnumProcesses枚举进程;OpenProcess打开进程;TerminateProcess终止进程;EnumProcessModules枚举进程装载的模块等等。
作者: suiyuanye     时间: 2006-6-11 00:18
asbai
可不可以帮我写一个?比如这个小程序叫kill.exe,当我在dos下运行kill tor.exe时,就可以结束tor进程,我不会写程序!写好后把源码也给我,不知道如何谢谢你

[ Last edited by suiyuanye on 2006-6-11 at 01:13 ]
作者: asbai     时间: 2006-6-11 14:29
suiyuanye兄未免太懒啦

那我再写详细点:

  1. EnumProcesses 枚举下一组进程。
  2. 在枚举到的这组进程中,使用 OpenProcess 依次打开进程,并用GetModuleFileNameEx 获取进程路径。
  3. 如果找到 tor.exe,调用 TerminateProcess 终止该进程,否则返回第一步直到系统中所有进程都被遍历。

这样可以了吧?(既然兄台要源码,说明不是完全不会 coding。。。。)

BTW: 这里是DOS开发讨论区 --b

[ Last edited by asbai on 2006-6-11 at 14:31 ]
作者: suiyuanye     时间: 2006-6-12 22:47
asbai兄,不是我懒,我真的不懂编程,上学时学过一小点C,现在根本不能用,学网络的,骗你是小狗,你帮我写一下吧,我知道求人难啊,但是其它的论坛连回复的人也没有,没办法。我在集成一个突破网络封锁的软件包,你也为人民做点贡献吧,这里谢你了。要求如下:
1。至少能在98和winME下使用,如果能支持2000,XP和2003那就更好,如果不能在2000以上的版本下使用,我只能调用taskkil了。
2。越简单越好,当在MS-DOS下输入command tor.exe时,能结束tor进程就好了。

[ Last edited by suiyuanye on 2006-6-12 at 22:48 ]
作者: asbai     时间: 2006-6-13 00:30
汗,suiyuanye兄该不会想去黑肉鸡吧?
作者: Wengier     时间: 2006-6-13 05:30
Win98下已有现成的命令行工具可以做到呀(而且也可以在Win2K/XP下运行),难道一定还要自己编写吗?
作者: suiyuanye     时间: 2006-6-13 10:57
Win98下已有现成的命令行工具可以做到呀(而且也可以在Win2K/XP下运行),难道一定还要自己编写吗?
=====================================================
能告诉我叫什么命令工具吗,在哪下载 ??
作者: Wengier     时间: 2006-6-13 11:24
asbai上面不是提到过prcview中就有命令行工具可以做到吗?

下面上传pv.exe最新版,功能比taskkill、pskill等都要强大且好用,压缩后才30多KB,而且完全支持Win9x/NT/2K/XP等。比如说pv -f -k notepad.exe就可以强制关闭notepad.exe这个进程。
附件 1: PV.EXE (2006-6-13 11:24, 34.5 K, 下载附件所需积分 1点 ,下载次数: 140)

作者: suiyuanye     时间: 2006-6-13 12:24
这个PV.exe是你编的吗,不错!有官方网吗
作者: Wengier     时间: 2006-6-13 12:32
这个当然不是我编的了,我上面不是说过已有现成的这种工具了吗?
作者: suiyuanye     时间: 2006-6-13 12:58
我在网下了一个和你的一样的版本,为什么你的只有34.5K,我的有72K,你做修改了???都是v 5.2.2.1,

pv displays information about the running processes.
pv v 5.2.2.1, Copyright (c) Igor Nys, 2000-2006.

[ Last edited by suiyuanye on 2006-6-13 at 13:00 ]
作者: Wengier     时间: 2006-6-13 13:21
晕,好好看看帖子。如使用中有什么问题再问吧。
作者: suiyuanye     时间: 2006-6-13 13:44
好的,有一个问题,在98和ME下用批处理调用这个命令后,不能自动关闭dos窗口,在xp下则没有这个问题,有办法吗?最后加了个exit不管用。
作者: Wengier     时间: 2006-6-14 11:32


  Quote:
Originally posted by suiyuanye at 2006-6-13 01:44 PM:
好的,有一个问题,在98和ME下用批处理调用这个命令后,不能自动关闭dos窗口,在xp下则没有这个问题,有办法吗?最后加了个exit不管用。

那你在批处理末尾加入这个试试看:

pv -k -f winoldap
作者: suiyuanye     时间: 2006-6-18 12:54
pv -k -f winoldap  这个命令果然管用,现在问题全部解决了,再次感谢!
作者: lovezq85     时间: 2006-10-30 11:43
这个工具怎么用啊,我双击他,闪了一下,就什么也没有了,
作者: Wengier     时间: 2006-10-31 14:38


  Quote:
Originally posted by lovezq85 at 2006-10-30 11:43 AM:
这个工具怎么用啊,我双击他,闪了一下,就什么也没有了,

应该在DOS窗口中运行呀,而不是直接双击!
作者: aaaaaa1     时间: 2007-3-21 12:29    标题: 不错

不错,我也要
作者: shzmz     时间: 2007-10-17 13:42
那你在批处理末尾加入这个试试看:

pv -k -f winoldap
作者: scrate     时间: 2007-10-17 23:03


  Quote:
Originally posted by Wengier at 2006-6-13 11:24 AM:
asbai上面不是提到过prcview中就有命令行工具可以做到吗?

下面上传pv.exe最新版,功能比taskkill、pskill等都要强大且好用,压缩后才30多KB,而且完全支 ...

可以在dos6.22下使用么?
作者: KMXL     时间: 2010-6-23 12:46
下载来看看