SoFunction
Updated on 2025-04-12

Comparison of functions of AutoIt3 and key sprite page 2/2


The Auto function set can also be roughly divided into 3 parts:
(1) Built-in functions for the software. There are about 359 functions of this type, including 67 GUI functions.
(2) UDF (user-defined) function. A considerable proportion of the function sets provided by AutoIt are user-defined functions, with a total of about 425 functions. This statistics does not include other user-defined functions that are freely downloadable on the official website. Most of this type of functions are used by AutoIt and enthusiasts write their own expansion of official function sets according to their own needs and interests, and they have all aspects of application direction.
(3) Plugin. This part is very small and can be ignored.
4. Support for game scripts
"Key Wizard" provides very distinctive functions for game scripting, such as: FindCenterColor (looking for specified colors from the center in a certain area of ​​the screen), FindColorEx (fuzzy search for colors), FindPic (looking for pictures), and functions that simulate hardware mouse/keyboard information, etc.
In addition, "Key Elves" specifically provides the special function of "Asiashield", which is very useful in some cases.

AutoIt official provides relatively limited functions in this regard, and only simply provides several limited functions support for Send, PixelChecksum, and PixelSearch. (Personal opinion: The starting point is different, one is games and the other is office, as mentioned before)
5. Script GUI interface support
The "key elves" software can package scripts to generate "sprites" and the official provides a relatively simple GUI interface. In addition, there are also enthusiasts who use other high-level languages ​​such as Basic/Delphi, or even Html language generation interfaces for "sprites" scripts to call, but this type of method is relatively high.
 
AutoIt has about 67 built-in GUI functions and about 220 user-defined functions, which is a large number. Through these GUI functions, a user interface containing various standard Windows controls can be generated. Someone who is interested even provides XSkin function packages for creating skin-like effects.
6. Compiling independent script support
Both "key wizard" and AutoIt provide the function of compiling scripts into executable files. In comparison, the executable files generated after compiling AutoIt is smaller and more efficient. This does not simply mean that the files generated by AutoIt are small, but the files compiled by "key wizard" need to support the environment. That is to say, although the file compiled by "key wizard" (the wizard) is a file, after you run this compilation script, other files will be automatically generated in the directory where the file is located. For example: Write a pop-up dialog box to display "Hello World!" This program, the file generated after AutoIt compiles is 201KB, and the "key elves" is 752KB. When running "key elves", a total of 14 files are automatically generated, with a total of 2.28MB.
By the way, AutoIt uses UPX software for compression, which may cause alarms by some antivirus software (Card 8 and Rising seem to be the most common).
7. Script debugging error detection
The "key wizard" script does not do well in debugging and error code positioning. If the script error occurs, it is difficult for you to find the cause of the same error. Sometimes the script runs incorrectly, but you cannot get any helpful prompts, and even have to search for the code line by line.

In this regard, AutoIt is similar to most high-level languages ​​such as Delphi's IDE. It can provide syntax checking, etc., and prompt information such as the error type, the location (row, column) of the error code. This information is of great help for quickly positioning and correcting script errors, greatly improving script writing efficiency.
8. Software update and upgrade
There is a process of continuous improvement and improvement in any software. Under normal circumstances, the more frequent the software is updated, the more dynamic the software is (except for frequent DeBug and Patch).
The versions before "Key Wizard" V6.0 did not support structured programming (or user-defined functions). They could not support function definitions with parameters and return values ​​well, nor did they distinguish the scope of variables. This situation did not have any major impact when script applications were simple in the early days. However, as the script functions become more perfect and the code volume becomes larger, this becomes more headache.
Although "Key Sprites" has provided embedded VBScript code block support for this situation since V6.0, it still feels inconvenient overall. Due to the compatibility issues with the old version, the "key wizard" still retains the goto, a programming-related statement in the scripting language, which may have to use the current VBScriptBeing...End method to solve the software's language function expansion problem, but I personally feel that it is a bit inappropriate.
In comparison, AutoIt also encountered similar situations in the upgrade of the version (from v2.64 to V3.0), but AutoIt has adopted another solution, which is to decisively remove Goto statements from the script's language system. In this regard, there is a paragraph in the official help file that explains the following:
4. Where is the "goto" command?
Gone. It's evil. No, you can't ask why - it just is. It's like that lump of rock they find in the microwave at the end of the film Time Bandits 
AutoIt v3 features most of the common "loops" in use today and with these Goto is no longer required. Look up While, Do, For, ExitLoop, ContinueLoop and Functions for the modern way of doing things  And while you are looking at help file
sections check out these on loops, conditional statements and functions. I promise you, once you have got the hang of such things you will be able to script in virtually any other language within a couple of minutes
Of course, it is only a matter of opinion that does not use Goto statements in the language system, and it is understandable. The important point is: the software needs to be expanded, and it is constantly updated and expanded.
Any behavior that looks first and last may not only lead to hesitation and slowness in action, but may also lead to missed opportunities due to inability to keep up with development.
Quote "Don't use AutoIT to do what the key elves can do"
Thank you to comrades who are committed to AutoIT! Note: The person wearing a hat takes off his hat, the person sitting stands up ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Previous page12Read the full text