
Windows Desktop Application Automation Using AutoIt - r0ash
https://blog.teemya.com/2018/06/14/windows-desktop-applications-automation-using-autoit/
======
otterpro
I've been using AutoHotkey as well as AutoIt in the past. If I need keyboard
macro, I use AHK. But if I need automation that interacts with other apps, I
use AutoIt. It's fairly easy to get started writing scripts, but I've never
liked the language/syntax of either AHK or AutoIt. One thing I wish I could do
this is to write everything in Python, Lua, etc...

~~~
skymt
Work on modernizing AutoHotkey's syntax has been ongoing for years, and the v2
alpha makes huge (backwards-incompatible) steps to make the syntax simpler and
more consistent.

[https://autohotkey.com/v2/v2-changes.htm](https://autohotkey.com/v2/v2-changes.htm)

~~~
mappu
I wish NSIS would do this too.

------
maxxxxx
We do a lot of UI automation for testing. I have played with AutoIt quite a
but I found it pretty difficult to get scripts to run reliably on different
machines. It's get for one offs though. It wouldn't hurt if you could use it
as a library from C# code. Or is that possible? The built in language is not
that great.

~~~
R0b0t1
Have a look at
[https://github.com/MerlijnWajer/Simba/](https://github.com/MerlijnWajer/Simba/).
It uses uses a dialect of Object Pascal for scripting and some core functions
are available in a library.

There are other projects which attempt to do similar things but I sincerely
believe Simba is the best program for desktop automation to date.

I helped write it.

~~~
softblush
Seems to have no usable documentation and the github repo has basically no
activity in a long time

~~~
R0b0t1
Don't confuse "lack of activity" with "broken." The program is considered
complete. I recently moved everything to FPC 3.0, see
[https://github.com/MerlijnWajer/Simba/tree/fpc-3.0](https://github.com/MerlijnWajer/Simba/tree/fpc-3.0).
The other work going on is language features for the scripting engine.

Most functionality is documented at
[http://docs.villavu.com/simba/](http://docs.villavu.com/simba/).

~~~
softblush
I don't confuse these things. I just stated that there isn't much activity.
But thanks to your answer I took a second look. My problem was that the first
impression of the documentation site wasn't/isn't that good IMO. I skimmed the
first (quite a few) pages of the documentation and didn't find anything that
gave me a first impression what this program/language looks like. You know
some kind of small (or not so small) sample code. Then I skipped to the
"Tutorial" section which consists of empty pages. Discouraged by that I missed
the much better "Scripting Reference" section. So I suggest to at least remove
the empty Tutorial section until there is actual content and/or simply link to
the examples in the repository

~~~
R0b0t1
I'm not sure why you'd mention it otherwise.

We were considering moving the documentation to GitHub so people were more
likely to contribute. There is a function viewer and many of the functions are
documented in the source. The autogeneration was abandoned before it was set
up because the program does what it was built to do.

Part of it is you need to have some idea what you want to do with the program
before you start. Most of the tutorials exist on villavu.com's forums with the
goal of automating gameplay.

------
sebazzz
What about other automation solutions, like UIPath Studio (which has a free
community edition)?

------
zmix
AutoIT can connect to the ActiveScripting (Windows Script Host) environment,
which is great!

------
syntaxing
Does anyone know how this compares to Sikuli(x)?

~~~
r0ash
I used Sikuli couple of years ago, that time, it was not able to work if
computer is locked (I used image hooks). However I am satisfied enough with
AutoIt that, I might not look at other tools in couple of next few years, it
has helpful community at forums and stackoverflow.

------
Fnoord
How does this compare with AHK (AutoHotKey)?

~~~
antruok
AHK is good for hotkeys and keyboard/mouse overrides. And maybe some mini
window automation.

If the logic grows and automation becomes complex, AutoIt is more suitable.

