![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-10 06:56 |
共 47,811 主题排行 / 349,897 发帖 / 今日 2 篇 / 48,255 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]ntsd关闭进程的问题? |
| 可打印版本 2,290 / 19 |
| 第16楼 everest79 | 发表于 2008-10-29 11:46 |
| 金牌会员 发帖 1,127 积分 2,564 | |
|
NTSD 调试程序在启动时要求用户指定一个要连接的进程。使用 TLIST 或 PVIEWER,您可以获得某个现有进程的进程 ID,然后键入 NTSD -p pid 来调试这个进程。NTSD 命令行使用如下的句法:
NTSD [options] imagefile 其中,imagefile 是要调试的映像名称,options 是下面选项之一: 表 1. NTSD 映像文件选项 选项 说明 -2 打开一个用于调试字符模式的应用程序的新窗口 -d 将输出重定向到调试终端 -g 使执行自动通过第一个断点 -G 使 NTSD 在子程序终止时立即退出 o 启用多个进程的调试,默认值为由调试程序衍生的一个进程 -p 指定调试由进程 ID 标识的进程 -v 产生详细的输出 例如,假设 inetinfo.exe 的进程 ID 为 104。键入以下命令将 NTSD 调试程序连接到 inetinfo 进程 (IIS)。 NTSD -p 104 也可使用 NTSD 启动一个新进程来进行调试。例如,NTSD notepad.exe 将启动一个新的 notepad.exe 进程,并与它建立连接。 一旦连接到某个进程,您就可以用各种命令来查看堆栈、设置断点、转储内存,等等。 表 2. 常用命令 命令 含义 ~ 显示所有线程的一个列表 KB 显示当前线程的堆栈轨迹 ~*KB 显示所有线程的堆栈轨迹 R 显示当前帧的寄存器输出 U 反汇编代码并显示过程名和偏移量 D[type][<range>] 转储内存 BP[#] <address> 设置断点 BC[<bp>] 清除一个或多个断点 BD[<bp>] 禁用一个或多个断点 BE[<bp>] 启用一个或多个断点 BL[<bp>] 列出一个或多个断点 做个实验看看 例如你系统进程 1234为notepad.exe 执行ntsd -p 1234打开调试窗口 输入q ntsd退出,被关联的进程也跟着退了了 ntsd不能终止的进程是其进程根本就不充许连接或丢弃这样的请求,再有就是最低需要administrator才有80%的保障会结束你选择的进程,system权限大概会有95%吧,嘿嘿 ntsd其实是一个debug程序,关闭进程是利用了ntsd退出时会终止与其关联的程序 |
|
| 第17楼 kgdetg1127 | 发表于 2008-10-29 15:22 |
| 初级用户 发帖 89 积分 158 | |
|
批处理使用了NTSD.EXE命令,问题出在你的批处理的命名,使用了"NTSD"字眼,命名为1.bat试试。
|
|
| 第18楼 newsuper | 发表于 2008-10-29 19:47 |
| 新手上路 发帖 15 积分 18 | |
|
为了跟楼主保持一致,我用6楼的代码测试了一遍,只是加了一条打开记事本的语句。
结果跟HAT版主的一样啊。 ![]() |
|
| 第19楼 newsuper | 发表于 2008-10-29 19:50 |
| 新手上路 发帖 15 积分 18 | |
Originally posted by kgdetg1127 at 2008-10-29 15:22: 这个问题我也有同感,前天写了一个小东西,里面就一条 msg /w %username% 呵呵 保存为msg.bat,结果怎么也运行不了,后来换了文件名才可以运行了,真是需要注意啊。 |
|
| 第20楼 HAT | 发表于 2008-10-29 19:53 |
| 版主 发帖 5,017 积分 9,023 | |
|
Re 18楼 为节约论坛空间以及加快他人访问速度,上传图片时请勿使用bmp格式,推荐使用png/jpg/gif等格式。
|
|
| 上一页 1 2 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |