[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[数值计算] [已解决]errorlevel于批处理与命令窗口返回值不同

批处理:

@echo off
explorer c:\windows
echo %errorlevel%
rem 显示errorlevel 值为1
pause



cmd命令窗口:

explorer c:\windows
echo %errorlevel%
rem 显示errorlevel 值为0


errorlevel于批处理与命令窗口返回值不同?
为什么???
谢谢。。。。

[ 本帖最后由 cryfordog 于 2009-11-2 22:14 编辑 ]
1

评分人数

    • keen: 感谢主动给标题标注[已解决]字样PB + 2
大众化的心理变态者

explorer.exe比较特殊,打开所有的资源管理器窗口都是共用一个进程。
在批处理中不用start而直接运行程序,会等待程序运行结束才执行下一条命令。但运行explorer不会这样,它没有创建新的进程。
start explorer,errorlevel就正常了。
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

恩。谢谢,虽不太明白原理,但以后会注意的。
在批处理中打开资源管理器,用start 或者start explorer命令才能返回正确的errorlevel值。
大众化的心理变态者

TOP

返回列表