无忧启动论坛

标题: nset妙用 DOS下判断某一程序是否运行 [打印本页]

作者: dos时代菜鸟    时间: 2008-6-29 15:08
标题: nset妙用 DOS下判断某一程序是否运行
DOS下如何判断某一程序是否运行?
一、所需软件
这里需要几个外部命令和第三方程序
0."|" 通道指令   内部指令约定
1."MEM" MS出品的内存察看程序 外部指令
MEM /D 可以显示当前内存中驻留的程序类表
2."FIND" MS出品查找命令      外部指令
FIND "ABCDEF" FILES.TXT /C 可以显示 FILES.TXT 文件中含有“ABCDEF”的 总行数

MEM /D | FIND "MOUSE" 将当前内存中驻留的程序列表传递个 FIND 指令进行搜索,
FIND 在该列表中搜索包含"MOUSE"的行,并把总行数显示出来。
3.NSET  HORST32包中的一个内存设置程序
NSET 2.1 (c) 1997 Horst Schaeffer - s. DOK Datei
NSET用法简单介绍:
NSET可以把DOS下命令输出信息传递给一个变量
比如:
命令:CD |NSET DIRX=$1  
解析:就是把 MSDOS指令--"CD"的输出结果付值给变量 "DIRX",也就是把当前工作目录赋给变量DIRX
命令:nset /l5 /p20,7 l=$0  <disk.txt
解释:将disk.txt文件中第5行数据中第20个字开始向后的7个字 传递给变量 l
二、功能实现
实例:实现智能判断鼠标驱动是否被开启,如果没有就开启之。
注:程序MOUSE.EXE 驱动鼠标后驻留内存,其内存标记为 "MOUSE"
------------------------
@ECHO OFF
MEM /D | FIND "MOUSE" /C | NSET MOUSE_X=$1
IF %MOUSE_X%*== 0* MOUSE


具体涉及指令文件看 http://dxsx.ys168.com/
作者: xypcmac    时间: 2008-6-29 15:27
判断内存驻留程序简单了,也不用 NSET 程序,直接 find 关键字查找 mem 程序列表,然后检查错误码即可知道。
作者: dos时代菜鸟    时间: 2008-6-29 17:57
我也知道,可总觉得不够直观,信不着 那个 errorlevel
作者: lianjiang    时间: 2008-6-29 18:06
信不着 那个 errorlevel???

呵呵,这理由不错。
作者: lianjiang    时间: 2008-6-29 18:07
从学习角度讲,不错,支持一下。
作者: xypcmac    时间: 2008-6-29 19:01
原帖由 dos时代菜鸟 于 2008-6-29 05:57 PM 发表
我也知道,可总觉得不够直观,信不着 那个 errorlevel



话是不错,但错误码判断也是DOS的一种重要方式。NSET 我也知道。1. 是不需要用到变量...2. 不增加代码的情况下不多用一个软件

还是谢谢你重新提起 NSET...




欢迎光临 无忧启动论坛 (http://wuyou.net./) Powered by Discuz! X3.3