[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
batman正好说反了
在批处理中调用外部程序运行
如果未指定绝对路径
则首先在当前路径下搜索
如果未指定扩展名
则按照%pathext%的顺序(一般是.com,.exe,.bat,.cmd,等)从前向后搜索
如果均未找到
则按照%path%的路径顺序从前向后搜索
而且在每个路径都会按照%pathext%的顺序从前向后搜索

所以把批处理自身命名为系统程序并不是问题的关键
关键是把批处理的名字写在程序自身中执行
则因为批处理程序通常在当前路径下执行
所以程序自身通常会被最先被找到并被调用(当然也有例外的情况)

就会形成一层套一层的不断反复调用
就是所谓的“递归调用”

如果程序没有设计这方面的错误处理(就是递归达到一定条件后退出调用)
则程序就会出现各种稀奇古怪的错误

[ 本帖最后由 qzwqzw 于 2010-2-5 21:33 编辑 ]
1

评分人数

    • batman: 多谢指正,学习了!PB + 10

TOP

返回列表