AmbiguousJoe Posted July 25, 2012 Share Posted July 25, 2012 (edited) I'm wondering if I can exit from a calling(parent) function (as in, exit from the current function and the one that called it), like you can exit a parent Loop with the "ExitLoop 2" command. If not, I'd like to know if there is a more efficient way of exiting a function without adding several "if, then, return" statements in my code. I'm using _IELoadWait($oIE) and WinWaitActive() commands throughout my code. I've had to add timeouts to all of these commands because I found that they were causing my code to hang indefinitely whenever something unexpected occured. In several of these cases, a timeout means I need to exit the function (so that my script isn't trying to click buttons that don't exist) and then proceed to the next process. Do I have to add the following code to every single Wait command in order to achieve this? If IELoadWait($oIE, 0, 30000) > 0 Then Return EndIf I know it's only an extra 2-3 lines, but when I've got several of these checks in a function, the code becomes less readable and means I'm typing the same thing over and over. I wanted to create a seperate function that would be able to handle the check and automatically break out of the function, but I quickly realized that the Return command would only break out of that function, then go right back and continue running the parent function. I tried the Exit command, but that just exited the entire script. Edited July 25, 2012 by AmbiguousJoe Link to comment Share on other sites More sharing options...
Bowmore Posted July 25, 2012 Share Posted July 25, 2012 (edited) What you have is the correct way to do it. If you want the readability of the code to flow better then you could use the single line version of the IF statement. If IELoadWait($oIE, 0, 30000) Then Return Edited July 25, 2012 by Bowmore "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to build bigger and better idiots. So far, the universe is winning."- Rick Cook Link to comment Share on other sites More sharing options...
JohnOne Posted July 25, 2012 Share Posted July 25, 2012 (edited) If you want the readability of the code to flow better then you could use the single line version of the IF statement.For the record, the above is a matter for opinion. Edited July 25, 2012 by JohnOne bogQ and JLogan3o13 2 AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now