找回密码
 加入
搜索
查看: 1133|回复: 3

请教如何用循环语句判断,并执行对应的操作

[复制链接]
发表于 2009-11-24 22:38:57 | 显示全部楼层 |阅读模式
本帖最后由 fengzishao 于 2009-11-25 09:20 编辑

请教如何用循环语句判断,并执行对应的操作

读取配置文件SET.INI里的内容并执行对应的操作
其中的文件内容是
[reg]
reg=

[bat]
bat=

[exe]
exe=



已好的代码如下
dim $exe,$reg,$bat
$exe=IniRead(@ScriptDir&"\set.ini","exe","exe","")
Local $reg=IniRead(@ScriptDir&"\set.ini","reg","reg","")
$bat=IniRead(@ScriptDir&"\set.ini","bat","bat","")
if $exe <> "" Then
        Run($exe)
ElseIf $reg <> "" Then
        Run(@ComSpec & ' /c regedit /s "'&$reg&'"',"", @SW_HIDE)
ElseIf        $bat <> "" Then
        Run($bat,"",@SW_HIDE)
Else
        Exit
EndIf

这三个内容里只要有一个执行的文件名存在。
就不会弹出提示。自动执行文件

否则弹出要执行的文件不存在
单个判断会写。执行对应的文件都已写好。

此代码问题存在于:只能执行一个文件,并不能执行下一个命令

请大家帮我看一下。如何改进
发表于 2009-11-25 00:10:51 | 显示全部楼层
本帖最后由 netegg 于 2009-11-25 00:27 编辑

dim $i =3
while 1
select
   case $exe <> "" and $i=3
     Run($exe)
    $i -=1
   case $reg <> "" and $i =2
      Run(@ComSpec & ' /c regedit /s "'&$reg&'"',"", @SW_HIDE)
     $i-=1
    case $bat <> ""  and $i =1
   Run($bat,"",@SW_HIDE)
    $i-=1
   case else
    exitloop
endselect
wend
不过如果运行每一步的时间不长的话
直接用
if.....then .....
if.....then......
if......then.....
也行,不用加循环
if....else...无法执行单一判断结构内的两个独立判断
 楼主| 发表于 2009-11-25 09:20:27 | 显示全部楼层
谢谢  netegg

学习了。
发表于 2009-11-25 10:26:34 | 显示全部楼层
不错的例子
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-6-16 06:00 , Processed in 0.070384 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表