中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-14 23:45
47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,268 会员排行
DOS开发编程 & 发展交流 (开发室) » 如何写一个在win98下的dos下结束进程的小命令程序?
可打印版本  7,807 / 21
第1楼 suiyuanye 发表于 2006-06-10 13:34
中级用户 发帖 94 积分 289
如何写一个在win98下的dos下结束进程的小命令程序?
我需要一个在能在win98的dos下运行结束进程的小命令,怎么写?在2000个XP下可以用taskkill命令和pskill命令,但是98的dos下不支持这个命令,高手帮一下。

例如,要结束进程 tor.exe
第2楼 asbai 发表于 2006-06-10 14:52
高级用户 发帖 252 积分 653
procview里带了一个Win32命令行界面的工具。

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

[ Last edited by suiyuanye on 2006-6-11 at 01:13 ]
第4楼 asbai 发表于 2006-06-11 14:29
高级用户 发帖 252 积分 653
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 ]
第5楼 suiyuanye 发表于 2006-06-12 22:47
中级用户 发帖 94 积分 289
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 ]
第6楼 asbai 发表于 2006-06-13 00:30
高级用户 发帖 252 积分 653
汗,suiyuanye兄该不会想去黑肉鸡吧?
第7楼 Wengier 发表于 2006-06-13 05:30
系统支持 发帖 10,521 积分 27,736
Win98下已有现成的命令行工具可以做到呀(而且也可以在Win2K/XP下运行),难道一定还要自己编写吗?
第8楼 suiyuanye 发表于 2006-06-13 10:57
中级用户 发帖 94 积分 289
Win98下已有现成的命令行工具可以做到呀(而且也可以在Win2K/XP下运行),难道一定还要自己编写吗?
=====================================================
能告诉我叫什么命令工具吗,在哪下载 ??
第9楼 Wengier 发表于 2006-06-13 11:24
系统支持 发帖 10,521 积分 27,736
asbai上面不是提到过prcview中就有命令行工具可以做到吗?

下面上传pv.exe最新版,功能比taskkill、pskill等都要强大且好用,压缩后才30多KB,而且完全支持Win9x/NT/2K/XP等。比如说pv -f -k notepad.exe就可以强制关闭notepad.exe这个进程。

附件
PV.EXE (34.5 KiB)
第10楼 suiyuanye 发表于 2006-06-13 12:24
中级用户 发帖 94 积分 289
这个PV.exe是你编的吗,不错!有官方网吗
第11楼 Wengier 发表于 2006-06-13 12:32
系统支持 发帖 10,521 积分 27,736
这个当然不是我编的了,我上面不是说过已有现成的这种工具了吗?
第12楼 suiyuanye 发表于 2006-06-13 12:58
中级用户 发帖 94 积分 289
我在网下了一个和你的一样的版本,为什么你的只有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 ]
第13楼 Wengier 发表于 2006-06-13 13:21
系统支持 发帖 10,521 积分 27,736
晕,好好看看帖子。如使用中有什么问题再问吧。
第14楼 suiyuanye 发表于 2006-06-13 13:44
中级用户 发帖 94 积分 289
好的,有一个问题,在98和ME下用批处理调用这个命令后,不能自动关闭dos窗口,在xp下则没有这个问题,有办法吗?最后加了个exit不管用。
第15楼 Wengier 发表于 2006-06-14 11:32
系统支持 发帖 10,521 积分 27,736
Originally posted by suiyuanye at 2006-6-13 01:44 PM:
好的,有一个问题,在98和ME下用批处理调用这个命令后,不能自动关闭dos窗口,在xp下则没有这个问题,有办法吗?最后加了个exit不管用。


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

pv -k -f winoldap
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023