Board logo

标题: 求教:批处理被执行的问题 [打印本页]

作者: PPdos     时间: 2008-6-23 01:32    标题: 求教:批处理被执行的问题

当批处理被执行之后 怎么把指令发送给内存来执行的

比如说 一个cls清屏幕命令 如何跟踪它在内存中被执行了哪些指令?

如果说批处理是依靠命令解释器来单独占用内存的 那么又是占用的那一部分呢?

小弟不才还请各位高手指教,在此先谢过各位!
作者: pusofalse     时间: 2008-6-23 01:42
这个好想要用到反汇编吧。。。
作者: PPdos     时间: 2008-6-23 05:38
谢谢你啊pusofalse 如果是反汇编 可是不存在cls这个程序阿 总不会是要把cmd给反汇编了。。。
作者: lxmxn     时间: 2008-6-23 22:22
debug C:\windows\system32\cmd.exe

u 命令分析它内部的指令??

汇编不懂,头大……
作者: PPdos     时间: 2008-6-23 22:41
debug加载之后只能察看64k范围内的指令 其余的将近400k无从得知阿

即时依靠第三方软件 这么多指令 如何察看cls命令对应的是哪条?

是不是cls被命令解释器 转换成汇编指令然后存入内存执行的阿?

期盼有人能解答阿!
作者: lxmxn     时间: 2008-6-24 00:24
那就用OD把,搜索字符串查找“cls”。
作者: PPdos     时间: 2008-6-24 00:40
搜索了 都找不到cls的影子 我怀疑是不是cmd调用了系统函数
作者: lxmxn     时间: 2008-6-24 01:28
应该可以找到的,可能是有特殊的符号把字符给隔开了。

用VIM打开cmd.exe,执行 :%s/^@//g 之后,再查找cls就可以看见内部的说明了,说明里面还是存在关于 cls 指令的。


作者: yxn064     时间: 2008-6-26 16:25
debug
作者: kevingames     时间: 2008-6-30 13:34
深刻学习中
作者: PPdos     时间: 2008-6-30 20:12
一本 Dos编程技术 的书

共同学习!