c.haslam Posted February 2, 2018 Share Posted February 2, 2018 In these days of 3.3.15.0 being the latest version, my Example script cDebug has #AutoIt3Wrapper_Version=B at its top (because it calls IsMap() and MapKeys()), and any users who call functions in my script have the same line at its top. If a user doesn't put this line at the top of his script, he will get IsMap(): undefined function But one day, AutoIt will advance to 3.3.16.0. At that time, a user will no longer need the beta installed to run his script, because 3.3.16.0 will have IsMap(). I would code If _VersionCompare(@AutoItVersion,'3.3.15.0')<0 Then MsgBox(0,'','bad') Exit EndIf but AU3Check detects the IsMap() error before this code gets to run. So is there a way of telling AutoIt3Wrapper or AU3Check to detect the minimum AutoIt version required to run a script, thus not confusing the newbie? If there is, the newbie would see the appropriate error message requires at least AutoIt 3.3.15.0. (If a user is still has 3.3.14.2, even if he has #AutoIt3Wrapper_Version=B at the top of his script, he will get IsMap(): undefined function.) Spoiler CDebug Dumps values of variables including arrays and DLL structs, to a GUI, to the Console, and to the Clipboard Link to comment Share on other sites More sharing options...
Developers Jos Posted February 2, 2018 Developers Share Posted February 2, 2018 Things work fine for me when I run (F5) this: #AutoIt3Wrapper_Version=B Global $oSelf IsMap($oSelf) Show me your total SciTE output pane information in case you have issues. Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
c.haslam Posted February 2, 2018 Author Share Posted February 2, 2018 (edited) Jos, I think that you are missing my point. Yes, your script and mine work AOK. We both have 3.3.15.0. I am trying to put my cDebug to bed, never to have to visit it again (at least for AutoIt version problems). So I would like to find a way that, for example, a user can #include "cDebug.au3" and call one of its external-use functions, e.g. _GuiDebug(), without needing to have a beta installed. I would also like to avoid the situation where a user hasn't upgraded his beta from 3.3.14.2 and does have #AutoIt3Wrapper_Version=B at the top of his script. He will get the IsMap() error; he should be told "upgrade the beta". cDebug.au3 is a UDF. One might have a line #AutoIt3Wrapper_MinVersion=3.3.15.0 Dos this make more sense? Edited February 2, 2018 by c.haslam Spoiler CDebug Dumps values of variables including arrays and DLL structs, to a GUI, to the Console, and to the Clipboard 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