Win32-AutoItX
view release on metacpan or search on metacpan
# Win32::AutoItX
Win32::AutoItX is a perl wrapper for the AutoItX (COM/ActiveX version of the
well-known utility [AutoIt v3](https://www.autoitscript.com/site/autoit/) for
automating the Windows GUI).
## Requirements
* Installed [AutoIt v3](https://www.autoitscript.com/site/autoit/downloads/) or
registered AutoItX3.dll library
* [Win32::OLE](https://metacpan.org/pod/Win32::OLE)
* [Win32::API](https://metacpan.org/pod/Win32::API)
* [Scalar::Util](https://metacpan.org/pod/Scalar::Util) (Perl core module)
* [Carp](https://metacpan.org/pod/Carp) (Perl core module)
## Installation
```
perl Makefile.PL && make install
```
## Usage
```perl
#!/usr/bin/perl
use strict;
use warnings;
use Win32::AutoItX;
my $a = Win32::AutoItX->new;
### AutoItX native methods ###
# Run an application
my $pid = $a->Run('calc.exe');
# Manage the clipboard
my $clipboard_text = $a->ClipGet;
$a->ClipPut("Win32::AutoItX rulez!");
# Work with screen pixels
my $color = $a->PixelGetColor(42, 42);
### Perlish methods ###
# Find window by title
my $window = $a->get_window('Calculator');
$window->wait;
# Show info about all window's controls
for my $control ($window->find_controls) {
local $\ = "\n";
print "Control $control";
print "\thandle: ", $control->handle;
print "\ttext: ", $control->text;
print "\tx: ", $control->x, "\ty: ", $control->y;
print "\twidth: ", $control->width, "\theight: ", $control->height;
}
# Get controls by text and class (optionally)
my $button_2 = $window->find_controls('2', class => 'Button');
my $button_3 = $window->find_controls('3', class => 'Button');
my $button_plus = $window->find_controls('+', class => 'Button');
my $button_eq = $window->find_controls('=', class => 'Button');
my $result = $window->find_controls('0', class => 'Static');
# Interact with controls
$button_2->click;
$button_3->click;
$button_plus->click;
$button_3->click;
$button_2->click;
$button_eq->click;
print "23 + 32 = ", $result->text, "\n";
```
## See also
[AutoIt v3 online documentation](https://www.autoitscript.com/autoit3/docs/)
## Author
[Mikhail Telnov](mailto:Mikhail.Telnov@gmail.com)
## Licensing
Please see the file called LICENSE.
( run in 0.916 second using v1.01-cache-2.11-cpan-81fc1098f69 )