- 帖子
- 508
- 积分
- 1490
- 技术
- 87
- 捐助
- 0
- 注册时间
- 2008-7-17
|
batman正好说反了
在批处理中调用外部程序运行
如果未指定绝对路径
则首先在当前路径下搜索
如果未指定扩展名
则按照%pathext%的顺序(一般是.com,.exe,.bat,.cmd,等)从前向后搜索
如果均未找到
则按照%path%的路径顺序从前向后搜索
而且在每个路径都会按照%pathext%的顺序从前向后搜索
所以把批处理自身命名为系统程序并不是问题的关键
关键是把批处理的名字写在程序自身中执行
则因为批处理程序通常在当前路径下执行
所以程序自身通常会被最先被找到并被调用(当然也有例外的情况)
就会形成一层套一层的不断反复调用
就是所谓的“递归调用”
如果程序没有设计这方面的错误处理(就是递归达到一定条件后退出调用)
则程序就会出现各种稀奇古怪的错误
[ 本帖最后由 qzwqzw 于 2010-2-5 21:33 编辑 ] |
-
1
评分人数
-
|