Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
v3.0.102
AutoIt v3 Homepage
Introduzione
AutoIt v3 è un linguaggio di scripting BASIC-like progettato per automatizzare la GUI di
Windows . Usa una combinazione di battute di tasti, movimenti del mouse e manipolazione di
finestre/controlli al fine di automatizzare compiti in una modalità non possibile o affidabile con altri
linguaggi (ad es. VBScript e SendKeys).
AutoIt è stato progettato inizialmente allo scopo di riconfigurare facilmente migliaia di PC, ma con il
rilascio della v3 è adatto anche all'automazione di attività diverse e allo scripting di attività ripetitive.
Auto può:
A differenza di AutoIt v2, il nuovo linguaggio v3 ha una sintassi molto più standard -simile a
VBScript e BASIC - e ora supporta espressioni complesse, funzioni utente, looping e ogni altra cosa
che veterani di scripting si aspettano.
Come con le versioni precedenti, AutoIt è stato disegnato per essere più piccolo possibile (~100KB)
e stand-alone senza files .dll esterni o chiavi di registry richieste. Scripts possono anche essere
compilati in eseguibili stand-alone con Aut2Exe.
Soprattutto, AutoIt continua ad essere FREE - ma se vuoi supportare il tempo, denaro e sforzi spesi
v3 ha gli stessi concetti delle versioni precedenti con titoli di finestre e testi e simulazione di mouse e
tastiere ma ha molte ceratteristiche nuove:
Controlli
Ottiene direttamente informazioni e interagisce con edit boxes, check boxes, list boxes, combos,
pulsanti, status bars senza il rischio di perdere battiture di tasti. Funziona anche con controlli che si
trovano in finestre non attive!
"Numeri veri e propri", stringhe di lunghezza illimitata, espressioni complesse, istruzioni if, select,
while loops, for loops, do loops, functions, arrays, eccellente trattamento di stringhe (oltre 25
funzioni!) - la lista va avanti. Ogni cosa di cui hai bisogno per rendere le tue routine di automazione
più indolore possibili. Sì, questo è un linguaggio di automazione di GUI ma la sintassi in v3 è
abbastanza potente per scopi di scripting generali. Le vecchie versioni di AutoIt erano spesso
ritenute non essere un vero e proprio "linguaggio". Non più.
Molto tempo è stato speso per simulare le funzioni di battutura di tasti e del mouse e renderle più
accurate possibile su tutti i sistemi operativi attuali. Le funzioni del mouse sembrano più "umane" in
questa versione e possono anche essere usate per creare agili demo scripts. Tutte le routine di mouse
e tastiera sono altamente configurabili sia in termini di simulazione che "velocità" e funzionalità.
In aggiunta al "titolo/testo" con cui v2 può accedere alle finestre puoi accedere alle finestre anche
attraverso i loro nomi di classe e identificatori. Come sempre puoi muovere, visualizzare,
nascondere, cambiare lel dimensioni, attivare, chiudere e fare efficacemente ciò che vuoi con le
finestre.
Software License
OVERVIEW
========
COPYRIGHT
=========
You should have received a copy of the GNU General Public License
along with this program; see the file COPYING.txt.
Jonathan Bennett and the AutoIt team grant you special permission to
freely use and distribute all AutoIt compiled scripts (including
commercial ones), subject to the following restrictions:
ANNOTATIONS
===========
- You can use a modified AutoIt version or modified AutoIt stub only for
programs that are compatible with the GNU General Public License.
- We grant you special permission to freely use and distribute all AutoIt
compiled programs.
- You can integrate all or part of AutoIt into projects that are compatible
with the GNU GPL, but obviously you cannot grant any special exceptions
beyond the GPL for our code in your project.
Jonathan Bennett
support@hiddensoft.com
25 March 2004
Dovrebbe essere ripetuto che per eseguire scripts AutoIt, il solo file richiesto è AutoIt3.exe. Se
compili uno script in un eseguibile un utente non avrà bisogno di installare AutoIt per eseguire
l'eseguibile copmpilato.
(eccezione: sotto Windows NT 4 il file PSAPI.dll deve essere nel path o nella directory di AutoIt affinchè le funzioni relative a Process...() lavorino)
Questa sezione riporta alcuni delle domande poste più frequentemente nel forum.
Domande
1. Perchè il mio vecchio script AutoIt v2.64 non funziona nella v3?
6. Perchè posso usare solo Run() per eseguire file .exe e .com? Relativamente a .msi /.txt e altri?
9. Perchè non posso stampare una variabile usando "La mia variabile è $variable"?
10. Perchè quando uso Send() per inviare una variabile accadono cose strane?
13. Come posso usare un'icona personalizzata quando compilo i miei script?
14. Come posso assicurarmi che solo una copia del mio script è in esecuzione?
Le precedenti versioni di AutoIt erano adatte per lo scopo per cui erano state disegnate - scrivere
semplici script per aiutare nelle installazioni software. Ma con il passare del tempo gli utenti hanno
cominciato a usarlo per attività di scripting più generali e complicate. La vecchia sintassi e struttura
rendeva ciò possibile ma molto difficoltoso e scomodo. E' stato deciso di rendere AutoIt più adatto
per compiti di automazione generali e per raggiungere lo scopo di creare un linguaggio standard
basic-like. Ciò significa anche che se già conosci un linguaggio di scripting imparerai ad usare
AutoIt v3 facilmente.
Back To Top
La vasta maggioranza dei vecchi scripts AutoIt erano focalizzati sull'installazione software e
cliccando "Next" in molte dialog box. Molti di questi script possono essere convertiti in v3
sempicemente aggiungendo un paio di parentesi qui e là. Di seguito c'è un esempio di script in v2 e
v3 (simulando un'installazione software con poche dialog box che hanno un pulsante Next e un
pulsante Finish )
; v2.64 Script
WinWaitActive, Welcome, Welcome to the XSoft installation
Send, !n
WinWaitActive, Choose Destination, Please choose the
Send, !n
WinWaitActive, Ready to install, Click Next to install
Send, !n
WinWaitActive, Installation Complete, Click Finish to exit
Send, !f
WinWaitClose, Installation Complete
; v3 Script
WinWaitActive("Welcome", "Welcome to the XSoft installation")
Send("!n")
WinWaitActive("Choose Destination", "Please choose the")
Send("!n")
WinWaitActive("Ready to install", "Click Next to install")
Send("!n")
WinWaitActive("Installation Complete", "Click Finish to exit")
Send("!f")
WinWaitClose("Installation Complete")
Dunque, non è così difficile! :) Poichè tutte le "stringhe" sono racchiuse tra apici non è più
necessario dover lottare con problemi causati da caratteri spaces all'inizio e alla fine di un testo. C'è
anche un fantastico supporto per molti text editors così che mentre state scrivendo scripts v3 potete
avere "syntax highlighting" che rendono tutto più facile.
Back To Top
C'è una sezione nell'helpfile che mostra come i comandi in v2 e v3 sono correlati - clicca qui per
vedere la pagina.
Uno degli autori di AutoIt v3 ha scritto un'utility per convertire automaticamente script v2 in v3. La
conversione è molto buona a meno che il tuo codice sia orribilmente pieno di goto :) Puoi trovare il
convertitore nella "Extras" directory (Start \ AutoIt v3 \ Extras - oppure cerca nella directory dove
hai installato AutoIt v3).
Back To Top
AutoIt v3 implementa molti dei comuni "loop" in uso oggi e con questi Goto non è più richiesto. Dà
un'occhiata alle funzioni While, Do, For, ExitLoop, ContinueLoop e Functions per una tecnica
moderna di fare queste cose :) E mentre stai guardando le sezioni dell'help file controlla loops,
conditional statements e functions. Te l'ho promesso, una volta che hai capito il principio di queste
cose sarai in grado di codificare script virtualmente in ogni altro linguaggio in un paio di minuti.
Giusto per iniziare, l'uso basilare del Goto nella versione 2.64 era un infinito loop come questo:
:mylabel
...do something...
...and something else...
goto, mylabel
While 1 = 1
...do something...
...do something else...
Wend
Se c'è una massiccia indignazione su questo punto dopo il lancio della v3 io posso aggiungerlo di
nuovo, ma solo per aiutare gli utilizzatori a convertire scripts.
Back To Top
Back To Top
6. Perchè posso usare solo Run() per eseguire file .exe e .com?
Relativamente a .msi /.txt ed altri?
Di solito solo poche estensioni di file sono "eseguibili" - queste sono .exe, .bat, .com, .pif. Altri tipi
di file come .txt and .msi sono attualmente usati con altri programmi. Quando premi doppio click su
file "myfile.msi" ciò che accade attualmente in background è che è eseguito "msiexec.exe
myfile.msi" . Quindi per eseguire un file .msi da AutoIt devi eseguire:
RunWait("msiexec myfile.msi")
Oppure, un modo anche più semplice è eseguire il comando "start" che eseguirà automaticamente il
file:
Back To Top
Back To Top
Back To Top
In questo momento stamperà La mia variabile è $msg . Ciò di cui hai bisogno è dire ad AutoIt di
unire la stringa e la variabile insieme usando l' operatore & :
Tecnica avanzata: Se devi aggiungere molte variabili ad una stringa puoi trovare utile la funzione
StringFormat() . Ad esempio, se volessi inserire da $var1 a $var5 in una stringa può essere più
sempile codificare:
$msg = StringFormat("Var1 è %s, Var2 è %s, Var3 è %s, Var4 è %s, Var5 è %s", $var1, $var2,
$var3, $var4, $var5)
MsgBox(0, "Esempio", $msg)
Back To Top
10. Quando uso Send() per inviare una variabile accadono cose
strane?
Se stai inviando il contenuto di una variabile presta attenzione al fatto che se contiene caratteri
speciali di tipo send come ! ^ + {SPACE} questi ultimi saranno tradotti in battute di tasti - che
raramente è ciò che si vuole. Per superare questo problema usa la modalità RAW di Send() che non
traduce caratteri speciali:
Send($myvar, 1)
Back To Top
Back To Top
Di seguito c'è un esempio di codice che causa la chiusura dello script quando viene premuto
CTRL+ALT+x:
HotKeySet("^!x", "MyExit")
...
...
; Resto dello Script
...
...
Func MyExit()
Exit
EndFunc
Back To Top
Back To Top
14. Come posso assicurarmi che solo una copia del mio script è
in esecuzione?
Il modo più facile è rinominare la finestra nascosta di AutoIt quando il tuo script viene eseguito per
la prima volta. Quindi nello stesso script controlla se è in esecuzione un altro script che ha il titolo
della finestra uguale a quello in esecuzione.
Back To Top
Back To Top
Scripts in esecuzione
Quando attivi AutoIt ti sarà chiesto di aprire uno script file. Uno script file è un semplice file di
testo contenente parole chiave di AutoIt e funzioni che indicano ad AutoIt che cosa vuoi fare. Script
files vengono creati in un semplice text editor come notepad.exe o con un'alternativa molto
migliore.
Sebbene gli scripts AutoIt v3 sono files di testo essi hanno di solito l'estensione .au3 per evidenziare
la differenza tra uno script e un file di testo. Se hai usato l'installer completo per installare AutoIt
puoi eseguire uno script AutoIt semplicemente con un doppio click. Ci sono anche varie opzioni per
aprire, editare, o compilare uno script se clicchi con il pulsante di destra un file .au3.
Qui c'è uno script di esempio. Nota che ; è usato per i commenti (molto simile a REM in files batch
DOS):
Scripts più complicati possono usare funzioni, che di solito sono poste alla fine di uno script. Qui
c'è uno script che usa funzioni:
Func TestFunc()
MsgBox(0, "Il mio Secondo Script!", "Ciao dalle funzioni!")
EndFunc
In aggiunta a $CmdLine c'è una variabile chiamata $CmdLineRaw che contiene l'intera command
line unsplit, così come riportato nell'esempio su:
Script Editors
Gli scripts AutoIt sono semplici file di testo che puoi editare con notepad.exe. Comunque ci sono
molti editors free o shareware che sono molto migliori per scrivere scripts ed hanno caratteristiche di
"syntax highlighting", così che parole chiave e funzioni di AutoIt si distinguono e rendono lo
scripting molto più facile e meno incline ad errori.
Scite
TextPad
Crimson Editor (free)
Source Edit (free)
UltraEdit
AutoIt è fornito con alcuni files di sintassi pr-scritti per molti editors e possono essere trovati nella
Extra directory di installazione (c'è un link sotto Start Menu / AutoIt v3 / Extra).
4. Usa i pulsanti Browse per selezionare i tuoi files di input (.au3) e output (.exe).
5. Se vuoi cambiare l'icone dell'exe che viene prodotto - semplicemente cerca l'icona che ti interessa
(alcune icone di esempio sono fornite in Program Files\AutoIt3\Aut2Exe\Icons).
6. Se vuoi che nessuno sia in grado di ecompilare il tuo script (quando un decompilatore è
disponibile) dovresti inserire una passphrase.
7. La sola altra opzione che potresti voler cambiare è il livello di compressione (specialmente se usi
FileInstall per aggiungere files extra). Usa il menu Compression per impostare questa caratteristica.
In generale, con tutte le routines di compressione maggiore è la compressione e maggiore il tempo
impiegato pre comprimere i files. Tuttavia, la velocità di decompressione (quando il .exe è in
esecuzione) è la stessa indipendentemente dal livello di compressione.
2. Clicca con il pulsante di destra del mouse per accedere al menu pop-up.
3. Il file sarà compilato in modalità "silent" con lo stesso filename - giusto con una estensione .exe
Filenames lunghi dovrebbero essere racchiusi in doppi apici come ad esempio "C:\Program
Files\Test\test.au3". Se nessun "out" file è fornito viene usato il filename di input con
un'estensione .exe.
Dettagli tecnici
Lo script compilato e i files addizionali aggiunti con FileInstall sono compressi con il mio (Jon)
schema di compressione LZSS/Huffman. La compressione raggiunge un rapporto di copmprssione
simile a quello di WinZip su moltissimi files e leggermente meglio su files di grandi dimensioni.
Poichè uno script compilato deve essere "eseguito" senza una password ha bisogno di poter
decriptare se stesso needs to be able to decrypt itself - i.e., the encryption is two-way. For this reason
you should regard the compiled exe as being encoded rather than completely safe. For example, if I
wrote a script that contained a username and password (say, for a desktop rollout) then I would be
happy using something like a workstation-level user/password but I would not consider it safe for a
domain/entire network password unless I was sure that the end-user would not have easy access to
the .exe file.
AutoIt Window Spy consente di ottenere informazioni da ogni finestra che può essere
automatizzata. Le informazioni che possono essere ottenute includono:
Titoli di finestre
Testo nelle finestre (visibili e nascoste)
Dimensione e posizione di una finestra
Contenuti della status bar
Posizione del puntatore del mouse
Colore dei pixels sotto il puntatore del mouse
Per usare AU3Spy eseguilo (dalla linea comandi o dal menu Start). AU3Spy rimarrà in primo piano
permettendoti di leggere le informazioni riportate. Una volta attivato muovi il mouse sulla finestra a
cui sei interessato e attivala - i contenuti di AU3Spy cambieranno pe rmostrare le informazioni che
sono disponibili. Con l'aiuto di AU3Spy dovresti poter automatizzare operazioni in pochissimo
tempo!
Quando AU3Spy è in esecuzione puoi copiare un testo direttamente dalla sua finestra principale
usando CTRL-C e incollando il contenuto nel tuo script per evitare errori di scrittura. Questa
tecnica può essere difficoltosa quando vuoi catturare informazioni relative ai pixel/mouse poichè
queste informazioni cambiano di continuo! Per aiutarti in questo scopo puoi "congelare" l'output di
AU3Spy premendo CTRL-ALT-F. Premi la combianzione di tasti nuovamente per "scongelare".
Note: Se una stringa vuota "" è fornita sia per il titolo che per il testo sarà usata la finestra
correntemente attiva (ciò non è vero in alcune delle più avanzate WinTitleMatchModes)!
Titoli e testi di finestre sono sensibili al minuscolo/maiuscolo. Devi confrontare esattamente il tipo
di carattere e la punteggiatura. Per evitare problemi seleziona il titolo/testo in Window Spy, usa ctrl-
c per copiarlo e incollalo direttamente nel tuo script.
Molte funzioni di finestre di AutoIt hanno spazio per un titolo e un testo; qui c'è la funzione
WinWaitActive. Questa funzione mette in pausa l'esecuzione di uno script finchè la finestra
specificata appare ed è attiva.
titolo è il solo parametro richiesto per questa funzione, entrambi i parametri testo e timeout sono
opzionali. In alcune funzioni il parametro testo non è opzionale, se non desideri specificare alcun
testo usa "" (una stringa vuota). Una stringa vuota, o assolutamente nulla nel testo indica ad AutoIt
che qualsiasi testo è valido.
Per usare la funzione sopra con qualsiasi finestra notepad entrambi questi metodi funzioneranno:
WinWaitActive("Untitled - Notepad")
Se la stessa finestra notepad avesse "Questa è una linea di testo" impostata nella finestra, Window
Spy visualizzerebbe:
Nota che Window Spy ha visto il titolo e il testo della finestra notepad. Qualunque cosa che
Window Spy può vedere può essere vista da AutoIt. Ora abbiamo abbastanza informazioni per
identificare questa esatta finestra anche se ci sono molte altre finestre notepad aperte. In questo caso
usiamo:
Testo di pulsanti come &Yes, &No, &Next (l'& indica una lettera sottolineata)
Testo di finestre di dialogo come "Sei sicuro di voler continuare?"
Testo di controlli
Testo vario - talvolta non conosci cos'è:)
La cosa importante è che puoi usare il testo insieme con il titolo per identificare unicamente una
finestra con cui lavorare.
Quando specifichi il parametro testo in una funzione di finestra è trattato come una sottostringa.
Così nell'esempio su se tu usassi il testo "linea di" dovresti ottenere una corrispondenza.
Quella che è stata descritta è la modalità di default con cui opera AutoIt; c'è un numero di altre
modalità avanzate da usare quando le cose non sono semplici come queste.
Modalità 1 (default)
In questa modalità una finestra intitolata Untitled - Notepad sarebbe confrontata da "Untitled -
Notepad", "Untitled", "Un", etc.
ad es.
WinWait("Untitled")
Modalità 2
In questa modalità una finestra intitolata Untitled - Notepad sarebbe confrontata da "Untitled -
ad es.
WinWait("Notepad")
Modalità 3
In questa modalità una finestra intitolata Untitled - Notepad sarebbe confrontata da "Untitled -
Notepad"
Modalità 4
Modalità avanzata.
In questa modalità sequenze speciali sono usate nel parametro titolo così che possono essere usati i
classnames della finestra e i puntatori. Il parametro testo rimane lo stesso.
"classname=CLASSNAME"
"handle=HANDLE"
"active"
"last" o ""
Ad esempio quando sei in modalità 4 e vuoi identificare una finestra che ha il classname
"MYCLASS1" dovresti usare "classname=MYCLASS1" per il parametro titolo. Quando usi un
puntatore devi usare il valore di ritorno di una funzione WinGetHandle (vedi funzione per un
esempio).
"active" confronta la finestra correntemente attiva (la stessa di "" nel default WinTitleMatchMode).
"last" usa l'ultimo confronto di finestre riuscito così che non devi specificare il titolo e il testo di
nuovo e di nuovo. ad es.
AutoItSetOption("WinTitleMatchMode", 4)
WinWaitActive("Untitled - Notepad")
Nota: Se "classname=", "handle=", "active", "last" o "" non sono usati come titolo allora il confronto
di finestre ha luogo in Modalità 1 rendendo quersta modalità adatta per un uso generale.
Controlli
Una delle migliori nuove caratteristiche di AutoIt v3 è la capacità di funzionare direttamente con
certi tipi di Controlli di finestra. Quasi ogni oggetto che vedi in una finestra è un controllo: pulsanti,
listboxes, edit fields, testi statici sono tutti controlli. Infatti Notepad è appunto un grande "Edit"
control! Poichè AutoIt funziona direttamente su un controllo essi forniscono un modo più affidabile
per automatizzare operazioni che inviare battute di tastiera.
Nota: AutoIt funziona solo con controlli Microsoft standard - alcune applicazioni scrivono i loro
controlli personalizzati che possono sembrare controlli MS standard ma possono resistere
all'automazione.
Usando AutoIt Window Spy puoi spostare il mouse sulla finestra a cui sei interessato e ti saranno
fornite informazioni sul controllo che in un dato momento è sotto il mouse. Le informazioni su un
controllo sono fornite come "classnameNN" che è il classname interno del controllo seguito da un
numero di istanza. Se hai una semplice finestra di dialogo con pochi pulsanti essi saranno
generalmente referenziati come "Button1", "Button2", "Button3", etc.
Usa Window Spy per guardare i controlli del compilatore di AutoIt per avere un'idea - contiene
controlli "Button" "Static" e "Edit" ed è una buona applicazione con cui fare pratica.
Noterai inoltre che Window Spy fornisce il testo che puoi vedere su un controllo, per esempio su un
pulsante Next potresti vedere il testo &Next - dove & indica che la lettera successiva è sottolineata
ed è comune quando lavori con menu and controlli. Puoi usare questo testo per identificare un
controllo al posto del "classnameNN" se ti piace - comunque se molti controlli hanno lo stesso testo
potresti avere problemi.
Guarda i contenuti di Function Reference \Window Management \ Controls per una lista delle
funzioni che lavorano con i controlli.
Uso voluto
Questo programma è stato progettato per eseguire compiti di automazione di GUI in Windows. Non
è stato progettato come "inizio e fine" dello scripting. Quando esegui compiti complessi come ad
esempio manipolazione di COM raccomaderei di usare AutoIt in unione con altri linguaggi di
scripting (come WSH o Kixtart - entrambi gratuiti) e di usare AutoIt per "riempire i vuoti".
Io personalmente uso AutoIt for grandi riconfigurazioni di PC. Io uso WSH per scripting
complessi/COM e quindi li uso per chiamare AutoIt (o AutoItX/AutoItDLL) quando ho bisogno di
eseguire configurazioni che possono essere realizzate di solito con input manuali (installare software,
configurare il pannello di controllo, cambiare lettere di drive, inviare chiavi e cliccare con il mouse,
etc.).
Comunque, ci sono molte persone che usano AutoIt come linguaggio di scripting in generale (e con
v3 ciò è molto più realistico) e sono molto felici :)
- Jon
Quando cominci ad usare v3 quanto segue dovrebbe aiutare a rendere le cose un po' più semplici.
C'è anche uno script convertitore da v2.64 a v3 disponibile nella directory "Extra" che è localizzata
nella directory di installazione.
- Backslashes non sono più caratteri speciali. Comunque, le virgolette sono un nuovo problema....
Ad esempio, Run('C:\Windows\Notepad.exe "C:\Some File.txt" ')
- Convenzioni:
<cmd>, <parameter1> [,<parameter2>] è stato sostituito con Cmd(parm1 [,parm2])
Se desideri riscrivere scripts versione 2.64 come versione 3, la tabella seguente può aiutarti:
SetStoreCapslockMode AutoItSetOption("SendCapslockMode",...)
SetTitleMatchMode AutoItSetOption("WinTitleMatchMode",...)
SetWinDelay AutoItSetOption("WinWaitDelay",...)
Shutdown Shutdown
Sleep Sleep
SplashTextOn SplashTextOn e altre
SplashTextOff SplashOff
StringCaseSense [vedi funzioni individuali]
StringLeft StringLeft
StringRight StringRight
StringMid StringMid
StringLen StringLen
StringReplace StringReplace
StringTrimLeft StringTrimLeft
StringTrimRight StringTrimRight
StringGetPos StringInStr
WinGetActiveStats [vedi WinGetPos, WinGetTitle, WinGetText]
WinGetActiveTitle WinGetTitle("")
WinKill WinKill
WinWait WinWait
WinWaitClose WinWaitClose
WinWaitActive WinWaitActive
WinWaitNotActive WinWaitNotActive
WinHide WinSetState(..., @SW_HIDE)
WinShow WinSetState(..., @SW_SHOW)
WinRestore WinSetState(...,@SW_RESTORE)
WinMinimize WinSetState(...,@SW_MINIMIZE)
WinMaximize WinSetState(...,@SW_MAXIMIZE)
WinActivate WinActivate
WinClose WinClose
WinMove WinMove
WinSetTitle WinSetTitle
WinMinimizeAll WinMinimizeAll
WinMinimizeAllUndo WinMinimizeAllUndo
#Include #Include
%CLIPBOARD% [vedi ClipGet e ClipPut]
A_OSTYPE @OSType
A_OSVERSION @OSVersion
A_SCRIPTNAME @ScriptName
A_SCRIPTDIR @ScriptDir
A_SCRIPTFULLPATH @ScriptFullPath
A_WORKINGDIR @WorkingDir
A_NUMBATCHLINES --
A_SEC @SEC
A_MIN @MIN
A_HOUR @HOUR
A_MDAY @MDAY
A_MON @MON
A_YEAR @YEAR
A_WDAY @WDAY
A_YDAY @YDAY
Datatypes
Variables
Macros
Operators
Conditional Statements
Loop Statements
User Functions
Comments
variants essi saranno trattati come numeri, se provi a concatenare (join) due variants essi saranno
trattati come stringhe.
Alcuni esempi:
10 & 20 è uguale alla stringa "1020" (& è usato per unire stringhe)
Se una stringa è usata come numero ma non contiene un numero valido, sarà assunta uguale a 0. Ad
esempio,
Numeri
I numeri possono essere numeri decimali standard come 2, 4.566, e -7.
E' anche supportata la numerazione scientifica; quindi, puoi scrivere 1.5e3 invece di 1500.
Numeri interi possono essere rappresentati anche in numerazione esadecimale precedendo il numero
intero con 0x come in 0x409 o 0x4fff (quando usi la numerazione esadecimale solo i numeri a 32-bit
sono validi).
Stringhe
Le stringhe sono racchiuse tra doppi apici come "questo". Se vuoi che una stringa contenga doppi
apici usa i doppi apici due volte come:
Puoi anche usare apici singoli come 'questo' e 'qui è un ' 'apice singolo' ' - ok?'
Puoi mischiare tipi di apici per rendere più facile il funzionamento ed evitare di dover raddoppiare i
tuoi apici per ottenere ciò che vuoi. Per esempio se vuoi usare molti doppi apici nelle tue stringhe
dovresti usare apici singoli per dichiararli:
Range di Datatype
La seguente tabella mostra il range di valori che un datatype variant può tenere.
Alcune funzioni in AutoIt lavorano solo con numeri a 32 bit (ad es. BitAND) e sono convertiti
automaticamente - queste funzioni sono documentate dove richiesto.
ogni variabile ha un nome (di nuovo, simile ad una casella di posta) e deve cominciare con il
carattere $ e può contenere solo lettere, numeri e il carattere di sottolineatura _. Qui ci sono alcuni
nomi di esempio:
$var1
$my_variable
Dichiarare variabili
Le variabili sono create e dichiarate con le parole chiave Dim, Local e Global:
Dim $var1
Puoi anche referenziare una variabile senza averla dichiarata prima, ma molti preferiscono
dichiarazioni esplicite.
Scope
Lo scopo di una variabile è controllato in base a quando e come dichiari una variabile. Se dichiari
una variabile all'inizio del tuo script e al di fuori di qualsiasi funzione essa esiste nello scopo Global
e può essere letta o cambiata dovunque nello script.
Se dichiari una variabile all'interno di una funzione è nello scopo Local e può essere usata solo entro
quella stessa funzione. Variabili create all'interno delle funzioni vengono distrutte automaticamente
quando la funzione termina.
Per default quando le variabili sono dichiarate usando Dim o assegnate in una funzione esse hanno lo
scopo Local a meno che ci sia una variabile globale con lo stesso nome (nel qual caso è riusata la
variabile globale). Ciò può essere alterato usando le parole chiave Local e Global per dichiarare
varibili e forzare lo scopo che vuoi.
Le macro predefinite sono generalmente usate per fornire un facile accesso a informazioni di sistema
come l'ubicazione della directory Windows, o il nome dell'utente loggato.
Operatore Descrizione
+ Addiziona due numeri. ad es. 10 + 20 (è uguale a 30)
- Sottrae due numeri. ad es. 20 - 10 (è uguale a 10)
* Moltiplica due numeri. ad es. 20 * 10 (è uguale a 200)
/ Divide due numeri. ad es. 20 / 10 (è uguale a 2)
& Concatena/unisce due stringhe. ad es. "one" & 10 (è uguale a "one10")
^ Eleva un numero alla potenza. ad es. 2 ^ 4 (è uguale a 16)
NOT Operatore logico NOT. ad es. NOT 1 (è uguale a 0)
Quando più di un operatore è usato in un'espressione l'ordine con cui vengono verificati è controllato
dalla precedenza degli operatori. La precedenza usata in AutoIt è fornita di seguito. Quando due
operatori hanno la stessa precedenza l'espressione è valutata da sinistra a destra.
NOT
^
*/
+-
&
< > <= >= = <> ==
AND OR
4 * 10 (è uguale a 40)
2 + 40 (è uguale a 42)
Puoi usare parentesi quadre per forzare che una parte di un'espressione sia valutata prima.
Le condizioni sono valutate come true (non-zero) o false (zero). Le condizioni generalmente usano
operatori di confronto come ==, <>, >=.
If...Then...Else
Select...Case
Entrambe le istruzioni sono simili e decidono quale istruzione eseguire in base alla condizione data.
Qui c'è un esempio di istruzione If che visualizza una message box se una variabile è più grande di
10.
$var = 20
Nell'esempio su l'espressione $var > 10 è valutata true perchè la variabile è più grande di 10. Ciò
ha causato il fatto che l'istruzione If esegue la prima linea MsgBox e visualizza "$var è più grande
di 10!".
Un'istruzione Select è molto simile, ma è generalmente usata quando vuoi testare un grande numero
di condizioni poichè di solito è più facile da leggere di un grande blocco di tipo If/ElseIf. ad es.
$var = 30
Select
Case $var > 1 AND $var <= 10
MsgBox(0, "Esempio", "$var è più grande di 1")
For...Next
While...WEnd
Do...Until
Mentre (senza voler fare giochi di parole) tutte le istruzioni eseguono loop simili, esse sono
leggermente differenti e di solito alcune saranno molto più appropriate di altri per una determinata
situazione.
Inbuilt Functions
La lista completa delle funzioni inbuilt è qui e le note sul loro uso sono qui.
Funzioni Utente
Le funzioni utente sono dichiarate usando le istruzioni Func...EndFunc .
I nomi di funzione devono cominciare con una lettera o un carattere di sottolineatura, e il resto può
contenere ogni combinazione di lettere, numeri e caratteri sdi sottolineatura. Alcuni nomi di
funzione validi sono:
MyFunc
Func1
_My_Func1
Qui c'è un esempio di uso di una funzione che raddoppia un numero 5 volte:
$val = 10
For $i = 1 To 10
$doubled = MyDouble($val)
MsgBox(0, "", $val & " raddoppiato è " & $doubled)
$val = $doubled
Next
Exit
Func MyDouble($value)
$value = $value * 2
Return $value
EndFunc
Il carattere punto e virgola (;) è il carattere commento. A meno che il punto e virgola sia entro una
stringa, tutto il testo che segue viene ignorato dall'interprete/compilatore di script.
NOTA: Non puoi mettere commenti su linee che finiscono con caratteri di sottolineatura!
E' anche possibile commentare grandi blocchi di script usando le direttive #comments-start e
#comments-end.
Keyword Reference
Di seguito c'è una lista completa di keywords disponibili in AutoIt. Clicca su una keyword per una
descrizione dettagliata.
Keyword Descrizione
#comments-start Specifica che un'intera sezione di uno script è commentata.
ContinueLoop Continua un While/Do/For loop.
Dim / Global / Local Dichiara una variabile o crea un array.
Do...Until Loop basato su un'espressione.
Exit Termina lo script.
ExitLoop Termina un loop While/Do/For.
For...Next Loop basato su un'espressione.
Definisce una funzione user-defined che riceve zero o più argomenti e
Func...Return...EndFunc
opzionalmente ritorna un risultato.
If...Then Esegue una singola istruzione condizionatamente.
If...ElseIf...Else...EndIf Esegue istruzioni condizionatamente.
#include Include un file nello script corrente.
#include-once Specifica che il file corrente può essere incluso una volta sola.
Select...Case...EndSelect Esegue istruzioni condizionatamente.
While...WEnd Loop basato su un'espressione.
#comments-start
...
...
#comments-end
Parametri
Nessuno.
Osservazioni
Funzioni correlate
#include, #include-once
Esempio
#comments-start
MsgBox(4096, "", "Questo non sarà eseguito")
MsgBox(4096, "", "Or this")
#comments-end
;;; #cs
MsgBox(4096, "", "Questo stamperà se '#cs' è commentato.")
#ce
#include "[path\]filename"
#include <filename>
Parametri
Osservazioni
In uno script AutoIt, altri scripts possono essere inclusi usando il comando #include". #include deve
essere in caratteri minuscoli.
Affinchè la sinassi della libreria include (#include <file>) funzioni AutoIt deve essere stato installato
usando l'installatore fornito, altrimenti la directory di installazione sarà sconosciuta è sarà usata la
directory corrente dello script (@ScriptDir\Include).
Se includi lo stesso file contenente una user-function più di una volta otterrai un errore "Funzione
duplicata". Quando scrivi un include file che può essere usato in questo modo, assicurati che la linea
iniziale contenga #include-once per prevenire che il file sia incluso più di una volta.
#include-once, FileInstall
Esempio
Specifica che il file corrente può essere incluso solo una volta.
#include-once
Parametri
Nessuno.
Osservazioni
Se includi lo stesso file contenente una user-function più di una volta, otterrai un errore "Funzione
duplicata". Quando scrivi un include file che può essere usato in questo modo, assicurati che la linea
iniziale contenga #include-once per prevenire il fatto che il file sia incluso più di una volta.
#include, FileInstall
Esempio
Func myFunc()
MsgBox(0,"", "Ciao da library.au3")
EndFunc
ContinueLoop
Parametri
Nessuno.
Osservazioni
ContinueLoop continuerà l'esecuzione del loop fino all'istruzione di test dell'espressione (che è
l'istruzione While, Until o For).
Anche se qualsiasi programma che usi ContinueLoop può essere riscritto usando istruzioni If-ElseIf-
End, ContinueLoop può rendere gli scripts più facili da capire.
Stai attento con i loops While/Do; puoi creare loops infiniti usando incorrettamente ContinueLoop.
ExitLoop
Esempio
Dim $variabile
Dim $array[subscript 1]...[subscript n]
Parametri
Osservazioni
Nota: In AutoIt puoi creare una variabile semplicemente assegnandole un valore ($myvar = 0) ma
molte persone preferiscono dichiararle esplicitamente.
Dim $a = 2, $b, $c = 20
Quando usi variabili lo scopo local è attivato per primo e lo scopo global per secondo.
Quando crei arrays sei limitato a 64 dimensioni e/o un totale di 16 milioni di elementi. (Tecnico: La
tabella interna di 4 bytes per elemento è allocata al momento della creazione, ma la memoria attuale
per ogni elemento è allocata SOLO per gli elementi di primo utilizzo).
Per cancellare un array (forse perchè è un array global di grandi dimensioni e vuoi liberare
memoria), semplicemente assegna ad esso un valore singolo:
$array = 0
Ciò libererà l'array e lo riconvertirà al valore singolo di 0.
Dim per lo stesso nome di variabile cancellerà e reimposterà le dimensioni alla nuova definizione.
Funzioni correlate
UBound, ReDim
Esempio
Do
statements
...
Until <expression>
Parametri
Osservazioni
Esempio
$i = 0
Do
MsgBox(0, "Il valore di $i è:", $i)
$i = $i + 1
Until $i = 10
Termina lo script.
Parametri
[opzionale] Numero intero che imposta il codice di ritorno di uno script. Questo
codice può essere usato da Windows o dalla variabile DOS %ERRORLEVEL%. Il
codice di
default è 0. Gli scripts normalmente impostano un errorlevel a 0 se lo script è
ritorno
eseguito correttamente; error levels 1 e superiori tipicamente indicano che lo script
non è stato eseguito correttamente.
Osservazioni
Il parametro, se incluso, può essere racchiuso in parentesi. Così, le seguenti parole chiave sono
equivalenti: Exit, Exit 0, e Exit(0). Comunque, Exit() non è valida.
ExitLoop
Esempio
;Primo Esempio
Exit
;Secondo Esempio
; Termina lo script se non sono passati argomenti da linea comandi
If $CmdLine[0] = 0 Then Exit(1)
;Terzo Esempio
; Apre il file specificato come primo argomento da linea comandi
$file = FileOpen($CmdLine[1], 0)
ExitLoop [livello]
Parametri
Osservazioni
Un valore negativo di livello non ha effetto; comunque, un valore di livello zero termina lo script.
ContinueLoop, Exit
Esempio
$sum = 0
While 1 ;usa un loop infinito finchè sarà chiamato ExitLoop
Parametri
Osservazioni
Istruzioni For...Next possono essere nidificate. Il loop For termina quando il valore della variabile
eccede la soglia stop. Se stepVal o stop sono variabili, il loro valore è letto solo la prima volta che il
loop viene eseguito.
ContinueLoop, ExitLoop
Esempio
For $i = 5 to 1 Step -1
MsgBox(0, "Contatore giù!", $i)
Next
MsgBox(0,"", "Siamo fuori!")
Definisce una funzione user-defined che prende zero o più argomenti e opzionalmente ritorna un
valore.
Parametri
I parametri sono impostati da te. In seguito puoi chiamare la funzione con qualsiasi funzione built-in.
Osservazioni
La parola chiave ByRef è opzionale e significa: (1) il parametro deve essere una variabile, e (2) la
variabile potrebbe essere cambiata dalla funzione. Per default, un parametro è passato by value che
significa che una copia del valore del parametro è manipolata dalla funzione.
Usa la parola chiave Return per uscire dalla funzione. Diversamente dalle funzioni built-in, le
funzioni user-defined ritornano 0 a meno che viene specificato un altro valore.
Gli arrays possono essere passati alle funzioni (e ritornati da loro) semplicemente usando il nome
dell'array senza parentesi quadre. Nota che dichiarazioni di funzioni non possono apparire all'interno
di altre dichiarazioni di funzioni.
Dim/Global/Local, #include
Esempio
$foo = 2
$bar = 5
msgBox(0,"Oggi è " & today(), "$foo è uguale a " & $foo)
swap($foo, $bar)
msgBox(0,"Dopo aver scambiato $foo e $bar", "$foo ora contiene " & $foo)
msgBox(0,"Finalmente", "Il più grande di 3 e 4 è " & max(3,4))
Exit
Parametri
Osservazioni
Questa versione dell'istruzione If è usata per eseguire un'istruzione singola senza EndIf.
l' espressione può contenere gli operatori booleani AND, OR, e NOT così come gli operatori logici
<, <=, >, >=, =, ==, e <> raggruppati con parentesi se necessario.
If...Else...EndIf, Select...Case...EndSelect
Esempio
;Alternativa:
If $CmdLine[0] = 0 Then
Exit
EndIf
If <espressione> Then
istruzioni
...
[ElseIf espressione-n Then
[elseif istruzioni ... ]]
...
[Else
[else istruzioni]
...
EndIf
Parametri
Osservazioni
If...Then, Select...Case...EndSelect
Esempio
Parametri
Osservazioni
La parola chiave ReDim è simile a Dim, eccetto che ReDim preserva i valori nell'array invece di
rimuovere i valori mentre ridimensioni un array. Il numero di dimensioni deve rimanere lo stesso, o
il vecchio array sarà ridimensionato durante il the ReDim. L'array manterrà lo scopo (Global o
Local) che aveva prima del ridimensionamento.
Nota: Se ReDim è usato su una variabile o array che non esiste, ReDim si comporterà allo stesso
modo di Dim.
Funzioni correlate
Dim, UBound
Esempio
For $I = 0 To 3
For $K = 0 To 5
$T = Int(Random(20) + 1) ;Ottiene numeri casuali tra 1 e 20
$X[$I][$K] = $T
$Y[$I][$K] = $T
Next
Next
ReDim $X[3][8]
Dim $Y[3][8]
$MSG = ""
For $I = 0 To UBound($X, 1) - 1
For $K = 0 To UBound($X, 2) - 1
If $K > 0 Then $MSG = $MSG & ", "
$MSG = $MSG & $X[$I][$K]
Next
$MSG = $MSG & @CR
Next
MsgBox(0, "ReDim Demo", $MSG)
$MSG = ""
For $I = 0 To UBound($Y, 1) - 1
For $K = 0 To UBound($Y, 2) - 1
If $K > 0 Then $MSG = $MSG & ", "
$MSG = $MSG & $Y[$I][$K]
Next
$MSG = $MSG & @CR
Next
MsgBox(0, "ReDim Demo", $MSG)
Select
Case <espressione>
istruzione1
...
[Case
istruzione2
...]
[Case Else
istruzioneN
...]
EndSelect
Parametri
Osservazioni
If...Then, If...Else...EndIf
Esempio
Select
Case $var = 1
MsgBox(0, "", "La prima espressione Case è vera")
Case $var2 = "test"
While <espressione>
istruzioni
...
WEnd
Parametri
Osservazioni
Esempio
$i = 0
While $i <= 10
MsgBox(0, "Il valore di $i è:", $i)
$i = $i + 1
WEnd
Macro Desrizione
@AppDataCommonDir path all'Application Data
@AppDataDir path al corrente user Application Data
@AutoItVersion Numero di versione di AutoIt, ad esempio 3.0.81.0
@CommonFilesDir path alla cartella Common Files
Ritorna 1 se lo script è un eseguibile compilato; altrimenti
@Compiled
ritorna 0.
@ComputerName Il nome di rete del Computer.
valore di %comspec%, L'interprete di comandi secondario
specificato;
@ComSpec
primariamente per uso da linea comandi, ad es. Run
(@ComSpec & " /k help | more")
@CR Carriage return, Chr(13); talvolta usato per interruzioni di linea.
= @CR & @LF ;usato occasionalmente per interruzioni di
@CRLF
linea.
@DesktopCommonDir path al Desktop
@DesktopDir path all'utente corrente del Desktop
@DesktopHeight Altezza dello schermo in pixels (risoluzione orizzontale).
@DesktopWidth Larghezza dello schermo in pixels (risoluzione verticale).
@DesktopDepth Profondità dello schermo in bits per pixel.
@DesktopRefresh Refresh rate dello schermo in hertz.
@DocumentsCommonDir path alla cartella Documenti
@error Status dell'error flag. Vedi la funzione SetError.
@FavoritesCommonDir path alla cartella Preferiti
@FavoritesDir path alla cartella Preferiti dell'utente attivo
@HomeDrive Lettera del drive contenente l'home directory dell'utente attivo.
Parte dell'home directory dell'utente attivo. Per ottenere il path
@HomePath
completo, usalo in congiunzione con @HomeDrive.
@HomeShare - Nome del server e della condivisione
@HomeShare
contenente l'home directory dell'utente attivo.
Valore delle ore dell'orologio nel formato 24-ore. Il range va da
@HOUR
00 a 23
IP address della prima scheda di rete. Tende a ritornare
@IPAddress1
127.0.0.1 su alcuni computer.
IP address della seconda scheda di rete. Ritorna 0.0.0.0 se non
@IPAddress2
applicabile.
Macro Descrizione
Ritorna 1 se uno script è un eseguibile complilato; altrimenti,
@compiled
ritorna 0.
@error Status del flag error. Vedi la funzione SetError.
@ScriptName Filename dello script in esecuzione.
Directory contenente lo script in esecuzione. (Il risultato non
@ScriptDir
contiene un backslash finale)
@ScriptFullPath Equivalente a @ScriptDir & "\" & @ScriptName
Directory di lavoro corrente/attiva. (Il risultato non contiene un
@WorkingDir
backslash finale)
@AutoItVersion Numero di versione di AutoIt come 3.0.91.0
Macro Descrizione
Macros per dati di "tutti gli utenti". Molti valori sono letti da
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
@AppDataCommonDir path all'Application Data
@DesktopCommonDir path al Desktop
@DocumentsCommonDir path a Documents
@FavoritesCommonDir path a Favorites
@ProgramsCommonDir path alla cartella Start Menu's Programs
@StartMenuCommonDir path alla cartella Start Menu
@StartupCommonDir path alla cartella Startup
Macro Descrizione
Ritorna un codice che indica il linguaggio del OS. Vedi Appendice per i
@OSLang
valori possibili.
Ritorna "WIN32_NT" per NT/2000/XP e ritorna "WIN32_WINDOWS"
@OSType
per 95/98/Me
Ritorna uno dei seguenti: WIN_XP, WIN_2000, WIN_NT4, WIN_ME,
@OSVersion
WIN_98, WIN_95
Ritorna il numero di build OS. Per esempio, Windows 2003 Server
@OSBuild
ritorna 3790
Informazioni sui Service pack nel formato di "Service Pack 3" o, per
@OSServicePack
Windows 95, può ritornare "B"
@IPAddress4 IP address della quarta scheda di rete. Ritorna 0.0.0.0 se non applicabilee.
Macro Descrizione
@SEC Valore dei secondi dell'orologio. Il range va da 00 a 59
@MIN Valore dei minuti dell'orologio. Il range va da 00 a 59
@HOUR Valore delle ore dell'orologio nel formato 24-ore. Il range va da 00 a 23
@MDAY Giorno corrente del mese. Il range va da 01 a 31
@MON Mese corrente. Il range va da 01 a 12
@YEAR Anno corrente a quattro cifre
Numero del giorno della settimana. Il range va da 1 a 7 che corrisponde
@WDAY
al range da Domenica a Sabato.
Giorno corrente dell'anno. Il range va da 1 a 366 (o 365 se non è un anno
@YDAY
bisestile)
Function Reference
Di seguito c'è la lista completa delle funzioni disponibili in AutoIt. Clicca sul nome di una funzione
per una descrizione dettagliata.
Funzione Descrizione
Abs Calcola il valore assoluto di un numero.
ACos Calcola l' arcocoseno di un numero.
Molte funzioni Win___ contengono un parametro opzionale "text." Questo parametro è inteso per
aiutare a differenziare tra finestre che hanno titoli identici.
Alcune funzioni indicano successo/fallimento con un return value; altre lo indicano settando l'
@error flag. Altre fanno entrambe le cose....
@error = 0 ;indica sempre successo
Return = varia, ma è tipicamente non-zero in caso di successo per consentire un codice facile da
leggere...
$x = FileReadLine("C:\someFile.txt")
If @error = -1 Then ;è stata raggiunta l'end-of-file
Se una funzione può settare l' @error flag, dovresti sempre controllarlo prima di usare un
return value - se @error indica un errore allora il return value della funzione è generalmente
indefinito...
ClipGet ( )
Parametri
Nessuna.
Valore di ritorno
Osservazioni
Nessuna.
ClipPut
Esempio
$bak = ClipGet()
MsgBox(0, "La Clipboard contiene:", $bak)
ClipPut ( "valore" )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0.
Osservazioni
Funzioni correlate
ClipGet
Esempio
EnvGet ( "envvariabile" )
Parametri
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
EnvSet, EnvUpdate
Esempio
$var = EnvGet("PATH")
MsgBox(4096, "la variabile Path è:", $var)
Parametri
Valore di ritorno
Nessuna.
Osservazioni
Una variabile d'ambiente impostata in questo modo sarà accessibile solo a programmi che AutoIt
avvia (Run, RunWait). Una volta che AutoIt termina, le variabili cesseranno di esistere.
Funzioni correlate
EnvGet, EnvUpdate
Esempio
EnvUpdate
EnvUpdate ( )
Parametri
Nessuno.
Valore di ritorno
Successo: Nessuno.
Insuccesso: Imposta @error a 1.
Osservazioni
L'effetto è simile a "log off" e di nuovo "log on". Ad esempio, modifiche alla variabile d'ambiente %
path% potrebbero non avere effetto fino a quando viene chiamata EnvUpdate (o esegui
logoff/reboot).
Funzioni correlate
EnvGet, EnvSet
Esempio
EnvUpdate()
Parametri
origine dir Path della directory origine (senza backslash finale). ad es. "C:\Path1"
dest dir Path della directory di destinazione (senza backslash finale). ad es. "C:\Path_Copy"
[opzionale] questo flag determina se sevrascrivere file che già esistono:
flag 0 = (default) non sovrascrivere files che già esistono
1 = sovrascrivere files che già esistono
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se si verifica un errore copiando una directory.
Osservazioni
Se la struttura della directory di destinazione non esiste, sarà creata (se possibile).
Funzioni correlate
DirRemove, FileCopy
Esempio
DirCreate ( "path" )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se c'è un errore nella creazione della directory.
Osservazioni
Questa funzione creerà anche tutte le directory fornite in "path" se non sono già presenti.
Funzioni correlate
DirRemove, FileCopy
Esempio
DirCreate("C:\Test1\Folder1\Folder2")
Parametri
origine dir Path della directory origine (senza backslash finale). ad es. "C:\Path1"
dest dir Path della directory di destinazione (senza backslash finale). ad es. "C:\Path_Copy"
[opzionale] questo flag determina se sovrascrivere file che già esistono:
flag 0 = (default) non sovrascrivere file che già esistono
1 = sovrascrivere file che già esistono
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se si verifica un errore durante l'operazione di move della directory.
Osservazioni
Se origine e destinazione sono su volumi differenti o sono usati path UNC sarà eseguita
un'operazione di copy/delete al posto di una move.
Se la destinazione è già presente e il flag "overwrite" è specificato la origine directory sarà mossa
all'interno della destinazione.
Funzioni correlate
DirRemove, FileMove
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Ritorna 0 se si verifica un errore durante la rimozione della directory (o se la directory
Insuccesso:
non esiste).
Osservazioni
Nessuna.
Funzioni correlate
DirCreate, FileRecycle
Esempio
DriveGetDrive ( "tipo" )
Parametri
Valore di ritorno
Ritorna un array di stringhe (lettera di drive letter seguita da "due punti") di drive
Successo:
trovati. L'elemento zero dell'array contiene il numero di drives.
Insuccesso: Ritorna 1 e imposta @error a 1.
Osservazioni
Nessuna.
Funzioni correlate
Esempio
DriveGetFileSystem ( "path" )
Parametri
Valore di ritorno
Successo: Ritorna il Tipo di File System del drive sotto forma di stringa; vedi la tabella di seguito.
Insuccesso: Imposta @error to 1.
Valore di
Interpretazione
ritorno
Il drive NON contien media (CD, Floppy, Zip) o il media non è formattato
1 (numerico)
(RAW).
Tipico file system per drives sotto ~500 MB come Floppy, RAM disks, USB
"FAT"
"pen" drives, etc.
"FAT32" Tipico file system for Windows 9x/Me hard drives.
"NTFS" Tipico file system per Windows NT/2000/XP hard drives.
"CDFS" Tipicamente indica un CD (o un'immagine ISO montata come CD drive virtuale).
"UDF" Tipicamente indica un DVD.
Osservazioni
Funzioni correlate
Esempio
DriveGetLabel ( "path" )
Parametri
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
Esempio
DriveGetSerial ( "path" )
Parametri
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
Esempio
DriveGetType ( "path" )
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
Parametri
Il device da mappare, ad esempio "O:" o "LPT1:". Se passi una stringa vuota per
device questo parametro si ottiene una connessione non mappata a uno specifico drive. Se
specifichi "*" una lettera di drive non usata sarà selezionata automaticamente.
condivisione
La condivisione remota a cui connettersi nella forma "\\server\share".
remota
[opzionale]
Una combinazione dei seguenti:
flags 0 = default
1 = Mapping persistente
8 = Visualizza la finestra di autenticazione se richiesta
[opzionale] Lo username da usare per connettersi. Nella forma "username" o
utente
"domain\username".
password [opzionale] La password da usare per connettersi.
Valore di ritorno
Osservazioni
Nota: Quando usi "*" come parametro di device sarà ritornata la lettera di drive selezionata invece di
1 o 0, ad es. "U:". Se si verifica un errore quando usi "*" una stringa vuota "" sarà restituita.
Funzioni correlate
DriveMapDel, DriveMapGet
Esempio
; Mappa il drive X a \\myserver2\stuff2 usando l'utente "jon" da "domainx" con password "tickle"
Drivemap("X:", "\\myserver2\stuff2", 0, "domainx\jon", "tickle")
DriveMapDel( "device" )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la disconnessione non ha avuto successo.
Osservazioni
Se una connessione non ha una lettera di drive mappata puoi usare il nome di connessione per
disconnetterti, ad es. \\server\share
Funzioni correlate
DriveMapAdd, DriveMapGet
Esempio
; Disconnessione
DriveMapDel("X:")
DriveMapGet( "device" )
Parametri
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
DriveMapAdd, DriveMapDel
Esempio
DriveSetLabel
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0.
Osservazioni
La maggior parte degli hard drives ha la lunghezza massima della label di 11 caratteri, e
DriveSetLabel fallirà se la lunghezza massima sarà superata. Inoltre, label di partizioni FAT32
tendono a convertire il testo in lettere maiuscole.
Funzioni correlate
Esempio
DriveSetLabel("C:\", "New_Label")
DriveSpaceFree ( "path" )
Parametri
Valore di ritorno
Successo: Ritorna lo spazio libero su disco in Megabytes sotto forma di numero float.
Insuccesso: Ritorna 1 e imposta @error a 1.
Osservazioni
DriveSpaceFree può funzionare anche quando viene fornito il path di una directory (che esiste).
Comunque, un path a un file non funzionerà.
Usa la funzione Round se il valore di ritorno è troppo preciso.
Funzioni correlate
Esempio
DriveSpaceTotal ( "path" )
Parametri
Valore di ritorno
Osservazioni
DriveSpaceTotal può funzionare anche quando viene fornito il path di una directory (che esiste).
Comunque, un path a un file non funzionerà.
Funzioni correlate
Esempio
DriveStatus ( "path" )
Parametri
Valore di ritorno
Valore di
Interpretazione
ritorno
UNKNOWN Il drive può non essere formattato (RAW).
READY Tipico di hard drives e drives che contengono media rimuovibili.
NOTREADY Tipico di floppy e CD drives che non contengono media.
Può indicare che la lettera del drive non esiste o che un network drive mappato è
INVALID
inaccessibile.
Osservazioni
Funzioni correlate
Esempio
FileChangeDir ( "path" )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la directory di lavoro non è cambiata.
Osservazioni
Nessuna.
Funzioni correlate
@WorkingDir
Esempio
FileChangeDir("C:\Windows")
FileClose ( filehandle )
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Se filehandle non è valido, un runtime error di AutoIt sarà avviato, e lo script terminerà!
Al termine, AutoIt chiude automaticamente ogni file che ha aperto--ma chiamare FileClose è ancora
una buona idea.
Questa funzione è usata anche per chiudere identificativi di ricerca ritornati da FileFindFirstFile().
Funzioni correlate
FileFindFirstFile, FileOpen
Esempio
$handle = FileOpen("test.txt", 0)
FileClose($handle)
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0.
Osservazioni
Funzioni correlate
Esempio
FileCopy("C:\*.au3", "D:\mydir\*.*")
FileCreateShortcut ( "file", "lnk" [, "workdir", "args", "desc", "icon", "hotkey", numero di icona,
stato] )
Parametri
file Path completo e nome file di un file per il quale creare lo shortcut.
lnk Path completo e nome file dello shortcut.
workdir [opzionale] Directory di lavoro.
args [opzionale] "File arguments" supplementari.
desc [opzionale] Descrizione del File.
icon [opzionale] Path/Nome file completo dell'icona da usare.
hotkey [opzionale] Hotkey - lo stesso del formato di chiave Send().
numero di
[opzionale] L'istanza dell'icona da usare (di solito 0)
icona
[opzionale] Lo stato dello shortcut che deve essere attivato. Usa sia
stato @SW_SHOWNORMAL, @SW_SHOWMINNOACTIVE che
@SW_SHOWMAXIMIZED
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se lnk non può essere creato.
Osservazioni
Hotkeys per shortcut di finestre sono della forma seguente: Ctrl+Alt+X, Ctrl+Shift+X, Shift+Alt+X,
Ctrl+NumPadKey, o Alt+NumPadKey dove X rapprenta una lettera, numero, punteggiatura, o
funzione key. Se specifichi una forma non valida, Windows tipicamente sceglie automaticamente
Ctrl+Alt
Nota che Windows distingue numeri "pad keys" da numeri regolari e chiavi di punteggiatura.
FileCreateShortcut consente di creare shortcuts Ctrl+X e Alt+X (che Windows normalmente
permette solo quando X è un NumPadKey); comunque, dovresti evitare queste assegnazioni che
possono andare in conflitto con hotkeys di applicazioni standard.
Windows proibisce di usare come hotkeys ESC, ENTER, TAB, SPACEBAR, PRINT SCREEN,
SHIFT, o BACKSPACE.
FileCreateShortcut non richiede un valido target, workdir, icona, o hotkey al fine di creare "con
successo" il file LNK; comunque, la destinazione del file LNK deve essere valida! Se la hotkey che
scegli è già in uso, il tuo nuovo shortcut ha la precedenza. inoltre, se crei uno shortcut con lo stesso
path\nome di uno shortcut preesistente, viene sovrascritto con la tua nuova versione.
Funzioni correlate
FileGetShortcut
Esempio
FileDelete ( "path" )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se i files non sono stati cancellati o non esistono.
Osservazioni
Funzioni correlate
Esempio
FileDelete("D:\*.tmp")
FileExists ( "path" )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se il path/file non esiste.
Osservazioni
Funzioni correlate
FileGetAttrib, DriveStatus
Esempio
If FileExists("D:\") Then
MsgBox(4096,"", "D: esiste.")
Else
MsgBox(4096,"", "D: non esiste.")
EndIf
FileFindFirstFile ( "filename" )
Parametri
Valore di ritorno
Ritorna un "search handle" che può essere usato con successive funzioni
Successo:
FileFindNextFile.
Insuccesso: Ritorna -1 se si verifica un errore.
Osservazioni
Quando hai finito di cercare con le funzioni FileFind... devi chiamare FileClose() per rilasciare
l'identificativo della ricerca.
Funzioni correlate
FileClose, FileFindNextFile
Esempio
; Visualizza i filenames di tutti i files nella directory corrente, nota che "." e ".." sono ritornati.
$search = FileFindFirstFile("*.*")
If $search = -1 Then
MsgBox(0, "Error", "Nessun files/directory corrisponde al campione da cercare")
Exit
EndIf
While 1
$file = FileFindNextFile($search)
If @error Then ExitLoop
FileFindNextFile ( $search )
Parametri
Valore di ritorno
Osservazioni
Quando hai finito di cercare con funzioni FileFind... devi chiamare FileClose() per rilasciare
l'identificativo di ricerca.
Funzioni correlate
FileClose, FileFindFirstFile
Esempio
While 1
$file = FileFindNextFile($search)
If @error Then ExitLoop
FileGetAttrib ( "filename" )
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
FileGetTime, FileSetAttrib
Esempio
FileGetLongName ( "file" )
Parametri
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
FileGetShortName
Esempio
$a = FileGetLongName("C:\PROGRA~1\")
;$a è probabilmente "C:\Program Files"
FileGetShortcut ( "lnk" )
Parametri
Valore di ritorno
Successo: Ritorna un array che contiene le informazioni di uno shortcut. Vedi Osservazioni.
Insuccesso: Imposta @error a 1 se lo shortcut non può essere acceduto.
Osservazioni
L'array ritornato da questa funzione è un array a dimensione singola contenente i seguenti elementi:
$array[0] = Shortcut target path
$array[1] = Directory di lavoro
$array[2] = Argomenti
$array[3] = Descrizione
$array[4] = Icon filename
$array[5] = Icon index
$array[6] = Lo stato dello shortcut (@SW_SHOWNORMAL, @SW_SHOWMINNOACTIVE,
@SW_SHOWMAXIMIZED)
Funzioni correlate
FileCreateShortcut
Esempio
FileGetShortName ( "file" )
Parametri
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
FileGetLongName
Esempio
$a = FileGetShortName("C:\Program Files")
;$a è probabilmente "C:\PROGRA~1"
FileGetSize
FileGetSize ( "filename" )
Parametri
Valore di ritorno
Nessuna.
Osservazioni
Funzioni correlate
Esempio
$size = FileGetSize("AutoIt.exe")
Parametri
Valore di ritorno
Successo: Ritorna un array che contiene informazioni su data e ora di un file. Vedi Osservazioni.
Insuccesso: Ritorna 1 e imposta @error a 1.
Osservazioni
Funzioni correlate
Esempio
$t = FileGetTime("C:\Windows\Notepad.exe", 1)
FileGetVersion ( "filename" )
Parametri
Valore di ritorno
Successo: Ritorna una stringa contenente informazioni sulla versione, ad es. "3.0.81.0".
Ritorna "0.0.0.0" se nessuna informazione sulla versione è stata trovata (o si sono
Insuccesso:
verificati altri errori), e imposta @error a 1.
Osservazioni
Nessuna.
Funzioni correlate
FileGetSize, FileGetTime
Esempio
$ver = FileGetVersion("Explorer.exe")
MsgBox(0, "Versione di Explorer", $ver)
Parametri
Il path sorgente del file da compilare. Deve essere una stringa di lettere; non può
origine
essere una variabile.
dest Il path di destinazione con un backslash finale. Questo può essere una variabile.
[opzionale] questo flag determina se sovrascrivere files che già esistono:
flag 0 = (default) non sovrascrivere files che già esistono
1 = sovrascrivi files esistenti
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0.
Osservazioni
La funzione FileInstall è disegnata per includere files in uno script AutoIt compilato. Questi files
inclusi possono quindi essere "estratti" durante l'esecuzione dello script compilato. Tieni presente
che files come le immagini possono aumentare fortemente la dimensione di uno script compilato.
Il file sorgente deve essere una stringa e non una variabile in modo che il compilatore può estrarre il
filename da includere. Il sorgente non può contenere wildcards.
Quando questa funzione è usata da uno script non compilato, viene eseguita una operazione di copia
(per consentire una facile pre-compilazione di test).
I files mantengono i loro timestamps originali di creazione/modifica quando vengono installati.
Funzioni correlate
#Include
Esempio
FileInstall("C:\test.au3", "D:\mydir\test.au3")
Parametri
origine Il path sorgente e il filename del file da muovere. (* wildcards sono supportati)
dest Il path di destinazione e il filename del file spostato. (* wildcards sono supportati)
[opzionale] questo flag determina se sovrascrivere files che già esistono:
flag 0 = (default) non sovrascrivere files che già esistono
1 = sovrascrivi files esistenti
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se origine non può essere spostato e se dest esiste già e flag=0.
Osservazioni
If i path sorgente e destinazione sono su volumi differenti un'operazione di copy e delete è eseguita
al posto della move.
Funzioni correlate
Esempio
FileMove("C:\foo.au3", "D:\mydir\bak.au3")
Parametri
Valore di ritorno
Osservazioni
Fino a 64 files possono essere aperti simultaneamente da un script AutoIt. Superare questo limite
causa un errore di run-time
Un file può essere aperto in lettura o in scrittura; non può aperto contemporaneamente in entrambe le
modalità.
Quando si apre un file in scrittura, il file sarà creato se non esiste già.
Quando hai finito di lavorare con un file, chiama la funzione FileClose per chiudere il file. Autoit
normalmente chiude tutti i files al termine, ma chiamare esplicitamente FileClose è comunque una
buona idea.
Funzioni correlate
Esempio
$file = FileOpen("test.txt", 0)
FileClose($file)
Parametri
Valore di ritorno
Ritorna il path completo del file(s) scelto. Risultati per selezioni multiple sono
Successo:
"Directory|file1|file2|..."
Insuccesso: Imposta @error a 1.
Osservazioni
Separa i filtri sui files con un punto e virgola come mostrato nell'esempio.
Nota: A questo livello, gruppi multipli di filtri non sono supportati.
Se il nome di default è fornito, devono essere fornite anche le opzioni. Se non si vuole alcuna
opzione, usa 0 come opzioni .
Speciali cartelle di Windows (come "My Documents") talvolta possono essere impostati come dir
iniziali; vedi l'Appendice.
Funzioni correlate
Esempio
If @error Then
MsgBox(4096,"","Nessun File(s) scelto")
Else
$var = StringReplace($var, "|", @CRLF)
MsgBox(4096,"","Hai scelto " & $var)
EndIf
Parametri
Valore di ritorno
Osservazioni
Se un filename è fornito piuttosto di un puntatore al file - il file sarà aperto e chiuso durante la
chiamata alla funzione - per il parsing di files di testo grandi questa tecnica sarà molto più lenta che
usare filehandles.
Nota: Non mischiare filehandles e filenames, ad es., non aprire un file con FileOpen e quindi usare
un filename in questa funzione. Usa sia filehandles o filenames nelle tue routines--non entrambe!
Funzioni correlate
Esempio
$file = FileOpen("test.txt", 0)
FileClose($file)
FileReadLine
Parametri
Valore di ritorno
Osservazioni
Ritorna il testo della linea letta, tutti i caratteri newline ( CHR(10) o @LF ) alla fine della linea letta
sono automaticamente scartati.
If nessun numero di linea da leggere è fornito, sarà letta la linea "successiva". ("Successiva" per un
file appena aperto è inizialmente la prima linea.)
Se un filename è fornito piuttosto di un puntatore al file - il file sarà aperto e chiuso durante la
chiamata alla funzione - per il parsing di files di testo grandi questa tecnica sarà molto più lenta che
usare puntatori ai files.
Nota: Non mischiare filehandles e filenames, ad es., non aprire un file con FileOpen e quindi usare
un filename in questa funzione. Usa sia filehandles o filenames nelle tue routines--non entrambe!
Funzioni correlate
Esempio
$file = FileOpen("test.txt", 0)
FileClose($file)
FileRecycle ( "origine" )
Parametri
origine Il path origine del file(s) o directory da cancellare. Le Wildcards sono supportate.
Valore di ritorno
Successoo: Ritorna 1.
Insuccesso: Ritorna 0 (tipicamente significa che il file è in uso o non esiste).
Osservazioni
Funzioni correlate
FileDelete, FileRecycleEmpty
Esempio
FileRecycle("C:\*.tmp")
Svuota il Cestino.
FileRecycleEmpty ( ["drive"] )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 (il cestino non puà essere svuotato - vedi sotto).
Osservazioni
Funzioni correlate
FileDelete, FileRecycle
Esempio
FileRecycleEmpty("C:\")
Parametri
Valore di ritorno
Ritorna il path completo del file scelto. I risultati per selezioni multiple sono
Successo:
"Directory|file1|file2|..."
Insuccesso: Imposta @error a 1.
Osservazioni
Se viene fornito il nome di default, devono essere fornite anche le opzioni. Se vuoi alcuna opzione,
usa 0.
Speciali cartelle di Windows (come "My Documents") talvolta possono essere impostati come
directory iniziale; vedi Appendice.
Funzioni correlate
FileOpenDialog, FileSelectFolder
Esempio
$MyDocsFolder = "::{450D8FBA-AD25-11D0-98A8-0800361B1103}"
If @error Then
MsgBox(4096,"","Save cancellata.")
Else
MsgBox(4096,"","Hai scelto " & $var)
EndIf
Parametri
Valore di ritorno
Osservazioni
Una root dir non esistente causerà anche che la cartella Desktop diventerà root.
L'opzione "Create Folder Button" può richiedere Windows XP con IE6 per funzionare.
Speciali cartelle di Windows (come "My Documents") possono essere impostate come root usando il
giusto CLSID dettagliato in Appendice.
Funzioni correlate
FileSaveDialog, FileOpenDialog
Esempio
Parametri
modello di
File(s) da cambiare, ad es. C:\*.au3, C:\Dir
file
+-
Attribito(s) da impostare/cancellare. ad es. "+A", "+RA-SH"
RASHNOT
[opzionale] Se è impostata a 1, le directories saranno trattate ricorsivamente. Il
ricorsività
Default è 0 (nessuna ricorsività).
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se si sono verificati errori.
Osservazioni
(Nota che non puoi impostare attributi di directory compresse con questa funzione.)
Funzioni correlate
Esempio
;segna all .au3 files nella directory corrente come read-only e system
FileSetAttrib("*.au3", "+RS")
If @error Then MsgBox(4096,"Error", "Problema nell'impostazione degli attributi."
Parametri
modello di
File(s) da cambiare, ad es. C:\*.au3, C:\Dir
file
La nuova data e ora da impostare nel formato "YYYYMMDDHHMMSS" (Anno,
data e ora mese, giorno, ore (nel formato 24hr), secondi). Se data e ora non vengono impostati
("") vengono usati data e ora correnti.
tipo Il timestamp da cambiare: 0 = Modified, 1 = Created, 2 = Accessed
[opzionale] Se è impostata a 1, le directories saranno trattate ricorsivamente. Il
ricorsività
Default è 0 (nessuna ricorsività).
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se si verificano errori cambiando il timestamp(s).
Osservazioni
Sotto Windows 9x non puoi cambiare il timestamp di una directory; tentativi in questo senso
vengono ignorati.
Funzioni correlate
Esempio
Accoda una linea di tsto alla fine di un file di testo aperto in precedenza.
Parametri
Valore di ritorno
Successo: Ritorna 1.
Ritorna 0 se il file non è aperto in scrittura, il file è read only, o il file non può essere
Insuccesso:
scritto per altri motivi.
Osservazioni
Se un filename è fornito piuttosto che un puntatore al file, il file sarà aperto e chiuso durante la
chiamata alla funzione. Per il parsing di grandi files di testo questa tecnica sarà molto più lenta che
usare filehandles. Comunque, il filename sarà creato se non esiste già.
Nota: Non mischiare filehandles e filenames, ad es., non usare FileOpen per aprire un file e poi il
filename in questa funzione. Usa o filehandles o filenames nelle tue routines--non entrambi.
Funzioni correlate
Esempio
$file = FileOpen("test.txt", 1)
EndIf
FileWrite($file, "Line1")
FileWrite($file, "Still Line1" & @CRLF)
FileWrite($file, "Line2")
FileClose($file)
Accoda una linea di tsto alla fine di un file di testo aperto in precedenza.
Parametri
Valore di ritorno
Successo: Ritorna 1.
Ritorna 0 se il file non è aperto in scrittura, è read only, o non può essere scritto per altri
Insuccesso:
motivi.
Osservazioni
Se un filename è fornito piuttosto che un puntatore al file, il file sarà aperto e chiuso durante la
funzione call. Per il parsing di grandi files di testo questa tecnica sarà molto più lenta che usare
filehandles. Comunque, il filename sarà creato se non esiste già.
Nota: Non mischiare filehandles e filenames, ad es., non usare FileOpen per aprire un file e poi il
filename in questa funzione. Usa o filehandles o filenames nelle tue routines--non entrambi.
Funzioni correlate
Esempio
$file = FileOpen("test.txt", 1)
FileWriteLine($file, "Line1")
FileWriteLine($file, "Line2" & @CRLF)
FileWriteLine($file, "Line3")
FileClose($file)
Parametri
Valore di ritorno
Successo: Ritorna 1.
Osservazioni
Funzioni correlate
IniRead, IniWrite
Esempio
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se il file è read-only.
Osservazioni
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0.
Osservazioni
Se due scripts AutoIt impostano la stessa HotKeys, dovresti evitare di eseguire questi scripts
simultanenamente. (Il secondo script non può catturare le hotkey a meno che il primo script termini o
cancelli la registrazione della key prima che il secondo script imposti la hotkey.)
Keys singole di a-z o A-Z. Almeno un modificatore Alt, Ctrl, o Win è richiesto con queste keys.
Ctrl+Alt+Delete E' riservato da Windows
F12 E' anche riservato da Windows, in base alle sue API.
Al contrario, usa {Enter} che cattura entrambi gli Enter keys sulla
Enter Key del NumPad
tastiera.
Win+B,D,E,F,L,M,R,U; e Questi sono built-in Windows shortcuts. Nota: Win+B e Win+L
Win+Shift+M potrebbero essere riservati solo su Windows XP e successivi.
Alt, Ctrl, Shift, Win Queste sono le keys modificatori di sè stessi!
Ad ogni hotkey globale che un utente ha definito usando software di
Altro terze parti, ogni combinazione di due o più "base keys" come '{F1}
{F2}', e ogni key nella forma '{LALT}' o '{ALTDOWN}'.
Quando imposti un hotkey, AutoIt cattura le keypress e non le passa all'applicazione attiva--con
un'eccezione: Le Lock keys (NumLock, CapsLock, e ScrollLock) cambieranno ancora il loro
rispettivo stato! Se vuoi inviare l'hotkey catturata all'applicazione attiva devi deregistrare l'hotkey
prima di invocare Send oppure devi usare ControlSend:
Funzioni correlate
Send, ControlSend
Esempio
Global $Paused
HotKeySet("{PAUSE}", "TogglePause")
HotKeySet("{ESC}", "Terminate")
HotKeySet("+!d", "ShowMessage") ;Shift-Alt-d
Func TogglePause()
$Paused = NOT $Paused
While $Paused
sleep(100)
ToolTip('Lo Script è "messo in pausa"',0,0)
WEnd
ToolTip("")
EndFunc
Func Terminate()
Exit 0
EndFunc
Func ShowMessage()
MsgBox(4096,"","Questo è un messaggio.")
EndFunc
Func Terminate()
Exit 0
EndFunc
Func ShowMessage()
MsgBox(4096,"","Questo è un messaggio.")
EndFunc
Parametri
Valore di ritorno
Nessuna.
Osservazioni
La sintassi del comando "Send" è simile a quella di ScriptIt e a quella del comando Visual Basic
"SendKeys". I caratteri vengono inviati come sono scritti ad eccezione dei seguenti:
'!'
Questo comando dice ad AutoIt di inviare una battuta di tasto ALT, quindi Send("Questo è un testo!
a") invierebbe le chiavi "Questo è testo" e quindi preme "ALT+a".
N.B. Alcuni programmi sono molto esigenti circa caratteri maiuscoli e chiavi ALT, ad es. "!A" iè
differente da "!a". La prima è ALT+SHIFT+A, la seconda è ALT+a. Se in dubbio, usa caratteri
minuscoli!
'+'
Questo comando dice ad AutoIt di inviare una battuta di tasto SHIFT, quindi Send("Hell+o")
invierebbe il testo "HellO". Send("!+a") invierebbe "ALT+SHIFT+a".
'^'
Questo comando dice ad AutoIt di inviare una battuta di tasto CONTROL,quindi Send("^!a")
invierebbe "CTRL+ALT+a".
N.B. Alcuni programmi sono molto esigenti circa caratteri maiuscoli e chiavi CTRL, ad es. "^A" è
differente da "^a". La prima indica CTRL+SHIFT+A, la seconda indica CTRL+a. Se sei in dubbio,
usa caratteri minuscoli!
'#'
L'hash invia una battuta di tasti Windows; quindi, Send("#r") invierebbe Win+r, che lancia la dialog
box Run.
Puoi impostare SendCapslockMode per disabilitare CAPS LOCK all'inizio di un'operazione di Send
e ripristinare il tasto alla fine.
Comunque, se un utente tiene premuta la chiave Shift quando comincia una funzione Send, il testo
può essere inviato in caratteri maiuscoli.
Una soluzione al problema è Send("{SHIFTDOWN}{SHIFTUP}") prima di altre operazioni di
Send.
Certe chiavi speciali possono essere inviate ma dovrebbero essere chiuse in parentesi graffe:
{PAUSE} PAUSE
{NUMPAD0} - {NUMPAD9} Numpad digits
{NUMPADMULT} Numpad Multiply
{NUMPADADD} Numpad Add
{NUMPADSUB} Numpad Subtract
{NUMPADDIV} Numpad Divide
{NUMPADDOT} Numpad period
{NUMPADENTER} Enter key on the numpad
{APPSKEY} Windows App key
{LALT} Left ALT key
{RALT} Right ALT key
{LCTRL} Left CTRL key
{RCTRL} Right CTRL key
{LSHIFT} Left Shift key
{RSHIFT} Right Shift key
{SLEEP} Computer SLEEP key
{ALTDOWN} Tiene premuta la chiave ALT finchè viene inviata {ALTUP}
{SHIFTDOWN} Tiene premuta la chiave SHIFT finchè viene inviata {SHIFTUP}
{CTRLDOWN} Tiene premuta la chiave CTRL finchè viene inviata {CTRLUP}
Tiene premuta la chiave Windows finchè viene inviata
{LWINDOWN}
{LWINUP}
Tiene premuta la chiave Windows finchè viene inviata
{RWINDOWN}
{RWINUP}
{ASC nnnn} Invia la combinazione di chiavi ALT+nnnn
{BROWSER_BACK} Solo 2000/XP: Seleziona il pulsante del browser "back"
{BROWSER_FORWARD} Solo 2000/XP: Seleziona il pulsante del browser "forward"
{BROWSER_REFRESH} Solo 2000/XP: Seleziona il pulsante del browser "refresh"
{BROWSER_STOP} Solo 2000/XP: Seleziona il pulsante del browser "stop"
{BROWSER_SEARCH} Solo 2000/XP: Seleziona il pulsante del browser "search"
{BROWSER_FAVORITES} Solo 2000/XP: Seleziona il pulsante del browser "favorites"
{BROWSER_HOME} Solo 2000/XP: Lancia il browser e va alla home page
{VOLUME_MUTE} Solo 2000/XP: Disabilita il volume
{VOLUME_DOWN} Solo 2000/XP: Riduce il volume
{VOLUME_UP} Solo 2000/XP: Aumenta il volume
{MEDIA_NEXT} Solo 2000/XP: Seleziona la traccia successiva in media player
{MEDIA_PREV} Solo 2000/XP: Seleziona la traccia precedente in media player
{MEDIA_STOP} Solo 2000/XP: Interrompe media player
{MEDIA_PLAY_PAUSE} Solo 2000/XP: Avvia/mette in pausa media player
{LAUNCH_MAIL} Solo 2000/XP: Lancia l'applicazione email
{LAUNCH_MEDIA} Solo 2000/XP: Lancia media player
{LAUNCH_APP1} Solo 2000/XP: Lancia app1 utente
Per inviare il valore ASCII A (lo stesso che si ottiene premendo ALT+065 sulla tastiera numerica)
Send("{ASC 65}")
Per tenere premuta una chiave (generalmente utile solo per giochi)
Send("{a down}") ;Tiene premuta la chiave A
Send("{a up}") ;Rilascia la chiave A
Moltissime tastiere di computer protatili hanno una chiave speciale Fn. Questa chiave non può essere
simulata.
Nota, impostando il parametro flag a 1 i processi "speciali" riportati su saranno disabilitati. Ciò è
utile quando vuoi inviare testo copiato da una variabile e vuoi che sia inviato esattamente come è
scritto.
Ad esempio, apri Opzioni Cartella (nel Pannello di Controllo) e prova il seguente codice:
Send("{TAB}") Naviga fino al prossimo controllo (pulsante, checkbox, etc)
Send("+{TAB}") Naviga fino al controllo precedente.
Naviga fino al prossimo WindowTab (su una finestra di dialogo "a
Send("^{TAB}")
schede")
Send("^+{TAB}") Naviga fino al precedente WindowTab.
Può essere usato per cambiare lo stato di una checkbox o cliccare su un
Send("{SPACE}")
pulsante.
Send("{+}") Di solito seleziona una checkbox (se è una checkbox "vera".)
Send("{-}") Di solito deseleziona una checkbox.
Send
Espande ricorsivamente le cartelle in una SysTreeView32.
("{NumPadMult}")
Usa combinazioni Alt-key per accedere a voci di menu. Inoltre, apri Notepad e prova il codice
seguente:
Send("!f") Send Alt+f, la chiave di accesso di Notepad per il menu file. Prova le altre lettere!
Funzioni correlate
Esempio
Send("#r")
WinWaitActive("Run")
Send("notepad.exe{Enter}")
WinWaitActive("Untitled -")
Send("La data/ora del giorno è {F5}")
Riferimenti di funzione
AutoItSetOption
Parametri
Valore di ritorno
Osservazioni
AutoIt si arrresterà con un messaggio di errore se l'opzione richiesta è sconosciuta. Le opzioni sono
le seguenti:
Opzione Parametri
Imposta la modalità con cui le funzioni caret sono usate, sia coordinate
assolute che coordinate relative alla finestra attiva:
CaretCoordMode
1 = coordinate assolute dello schermo (default)
0 = coordinate relative alla finestra attiva
Imposta la modalità con la quale i colori sono definiti, sia RGB che BGR.
RGB è il default ma in versioni precedenti di AutoIt (pre 3.0.102) BGR
era il default:
ColorMode
0 = I colori sono definiti come RGB (0xRRGGBB) (default)
1 = I colori sono definiti come BGR (0xBBGGRR) (la modalità usata
nelle vecchie versioni di AutoIt)
Cambia il modo in cui le stringhe letterali e i simboli % sono interpretati.
Per default le stringhe sono trattate letteralmente, questa opzione consente
di trattare variabili %ambiente% all'interno di stringhe, ad es., "La
directory temp è: %temp%".
ExpandEnvStrings
1 = espande le variabili d'ambiente (simile a AutoIt v2)
0 = non espande le variabili d'ambiente (default)
Senza questa opzione la modalità usuale sarebbe: "La directory temp è: "
& EnvGet("temp")
Altera la lunghezza della pausa tra mouse clicks.
MouseClickDelay
Tempo di pausa in millisecondi (default=10).
Altera il tempo in cui un click del mouse è tenuto attivo prima di essere
MouseClickDownDelay rilasciato.
Tempo di pausa in millisecondi (default=10).
Altera la lunghezza della pausa all'inizio e alla fine di una operazione di
MouseClickDragDelay "mouse drag".
Tempo di pausa in millisecondi (default=250).
Imposta la modalità in cui sono usate le coordinate nelle funzioni del
mouse, sia coordinate assolute che coordinate relative alla finestra attiva:
MouseCoordMode
1 = coordinate assolute dello schermo (default)
0 = coordinate relative alla finestra corrente (lo stesso di AutoIt v2)
Se questa opzione è usata tutte le variabili devono essere pre-dichiarate
conh Dim, Local o Global prima che possano essere usate - elimina la
MustDeclareVars possibilità che variabili non corrette causino bugs.
1 = Le variabili devono essere pre-dichiarate
0 = Le variabili non devono essere pre-dichiarate (default)
Imposta la modalità in cui le coordinate nelle funzioni pixel sono usate,
sia coordinate assolute che relative alla finestra corrente:
PixelCoordMode
1 = coordinate assolute dello schermo (default)
0 = coordinate relative alla finestra corrente
Altera il metodo che è usato per confrontare il testo delle finestre durante
una operazione di search.
1 = Completa / Modalità lenta (default)
2 = Modalità rapida
WinTextMatchMode nella modalità rapida AutoIt di solito può "vedere" solo testo di dialog,
testo di pulsanti e le intestazioni di alcuni controlli. Nella modalità di
default molto più testo può essere visto (ad esempio il contenuto della
finestra di Blocco Note).
Se stai avendo problemi di prestazioni quando esegui molte ricerche di
Funzioni correlate
Molti!
Esempio
; copia tutto ciò che vuoi cambiare ;il valore di default è elencato per primo
Abs ( espressione )
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Nessuno.
Esempio
ACos ( espressione )
Parametri
Valore di ritorno
Osservazioni
ACos(x) è definito matematicamente solo per -1 < x < 1, perciò ACos tende a ritornare -1.#IND per
altri valori di x.
Funzioni correlate
Esempio
$x = ACos(0.5)
$pi = 3.14159265358979
$radToDeg = 180 / $pi
$y = ACos(-1) * $radToDeg ;l'arcoseno di -1 ritorna 180°
Riferimenti di funzione
ASin
ASin ( espressione )
Parametri
Valore di ritorno
Osservazioni
ASin(x) è definito matematicamente solo per -1 < x < 1, perciò ASin tende a ritornare -1.#IND per
altri valori di x.
Funzioni correlate
Esempio
$x = ASin(0.5)
$pi = 3.14159265358979
$radToDeg = 180 / $pi
$y = ASin(1) * $radToDeg ;arcoseno di 1 ritorna 90°
Riferimenti di funzione
ATan
ATan ( espressione )
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
$x = ATan(0.5)
Riferimenti di funzione
BitAND
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
Riferimenti di funzione
BitNOT
BitNOT ( valore )
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
$x = BitNot(5)
#cs Commenti:
Il risultato è -6 perchè per numeri a 32-bit
5 == 00000000000000000000000000000101 binary
-6 == 11111111111111111111111111111010 binary
e il primo bit è segnato
#ce
Riferimenti di funzione
BitOR
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
Riferimenti di funzione
BitShift
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
$x = BitShift(14, 2)
; x == 3 perchè 1110b right-shifted due volte è 11b == 3
$y = BitShift(14, -2)
; y == 48 perchè 1110b left-shifted due volte è 111000b == 56
$z = BitShift( 1, -31)
; z == -2147483648 perchè nella numerazione in complemento a 2, la
; 32esima cifra dalla destra ha segno negativo.
Riferimenti di funzione
BitXOR
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
Cos ( espressione )
Parametri
Valore di ritorno
Osservazioni
1° = pi / 180 radianti.
Funzioni correlate
Esempio
$pi = 3.14159265358979
$x = cos($pi / 4)
Exp ( espressione )
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Log
Esempio
Log ( espressione )
Parametri
Valore di ritorno
Osservazioni
@error è sempre 0
Funzioni correlate
Exp
Esempio
$y = Log10(1000) ;ritorna 3
Parametri
valore1 Il dividendo.
valore2 Il divisore.
Valore di ritorno
Osservazioni
Funzioni correlate
Nessuna.
Esempio
$n = 18
If mod($n, 2) = 0 Then
MsgBox(0,"", $n & " è un numero pari.")
Else
MsgBox(0, "", $n & " è un numero dispari.")
EndIf
Parametri
Min [opzionale] Il numero più piccolo che deve essere generato. Il default è 0.
Max [opzionale] Il numero più grande che deve essere generato. Il default è 1.
Valore di ritorno
Osservazioni
Il risultato sarà un float nel range da Min a Max, incluso Min, ma NON incluso Max.
Funzioni correlate
Int, Round
Esempio
;Flip of coin
If Random() < 0.5 Then ; Ritorna un valore compreso tra 0 e 1.
$msg = "Testa. 50% Vincita"
Else
$msg = "Coda. 50% Perdita"
Endif
MsgBox(0,"Lancio della moneta", $msg )
;Roll of a die
msgBox(0,"Roll of die", "You rolled a " & Int(Random(6)+1))
;Random letter
If Random() < 0.5 Then
;Capitals
$Letter = Chr(Random(Asc("A"), Asc("Z")+1)
Else
;Lower case
$Letter = Chr(Random(Asc("a"), Asc("z")+1)
Endif
Questa funzione usa il generatore di numeri random Mersenne Twister , MT19937, scritto da Takuji
Nishimura, Makoto Matsumoto, Shawn Cokus, Matthe Bellew e Isaku Wada.
Il Mersenne Twister è un algoritmo per generare numeri random. E' stata disegnata considerando
l'imperfeazione di altri generatori. Il periodo, 219937-1, e l'ordine di equidistribuzione, 623
dimensioni, sono moplto più grandi. Il generatore è anche veloce; evita moltiplicazione e divisione, e
beneficia di caches e pipelines. For ulteriori informazioni vedi la pagina web degli inventori
http://www.math.keio.ac.jp/~matumoto/emt.html
Copyright (C) 1997 - 2002, Makoto Matsumoto e Takuji Nishimura, Tutti i diritti riservati.
Ridistribuzione e uso degli originali in formato binario, con o senza modifiche, sono consentiti
purchè le seguenti condizioni siano rispettate:
1. Ridistribuzione del codice originale deve contenere le informazioni sul copyright, questa lista di
condizioni e il seguente disclaimer.
2. Ridistribuzione in formato binario deve riprodurre le informazioni sul copyright notice, questa
lista di condizioni e il seguente disclaimer nella documentazione e/o altro materiale fornito con la
distribuzione.
3. I nomi dei contributori non possono essere usati per approvare o promuovere prodotti derivati da
questo software senza specifica approvazione scritta.
Round
Parametri
Valore di ritorno
Osservazioni
Il parametro posizioni decimali può essere negativo, che significa arrotondare alle unità, decine,
centinaia, etc. Nota che sono visualizzate fino a quindici cifre di un numero, e nota che le posizioni
decimali non riempiranno mai un numero con zero alla fine.
Funzioni correlate
Int, Number
Esempio
Sin ( espressione )
Parametri
Valore di ritorno
Osservazioni
1° = pi / 180 radianti.
Funzioni correlate
Esempio
$pi = 3.14159265358979
$x = sin($pi / 4) ;ritorna 0.707106781186547 che dovresti riconoscere come sqrt(2)/2
Sqrt ( espressione )
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Exp, Log
Esempio
Tan ( espressione )
Parametri
Valore di ritorno
Osservazioni
1° = pi / 180 radians.
Nota che Tan è "infinito" per ... -3PI/2, -PI/2, PI/2, 3PI/2, 5PI/2, ... e tende a ritornare
1.63317787283838e+016 per tali multipli di Pi-mezzi.
Funzioni correlate
Esempio
$pi = 3.14159265358979
$x = tan($pi / 4)
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
MsgBox
Esempio
$answer = InputBox("Question", "Dove sei nato?", "Pianeta Terra", "", -1, -1, 0, 0)
;Poni l'input box nell'angolo in alto a sinistra visualizzando i caratteri come sono digitati.
Parametri
Valore di ritorno
Osservazioni
Ad esempio, per specificare una finestra SYSTEMMODAL con i pulsanti YES/NO il valore del flag
dovrebbe esserer 4096+4 (o 4100).
Una message box appare centrata sullo schermo e ridimensionata in base al testo che contiene.
Comunque, il titolo potrebbe essere troncato se viene usato il flag SYSTEMMODAL (4096).
Funzioni correlate
Esempio
MsgBox(4096, "Test", "Questa finestra sarà chiusa per timeout entro 10 seconds", 10)
ProgressOff ( )
Parametri
Nessuna.
Valore di ritorno
Nessuno.
Osservazioni
Nessuna.
Funzioni correlate
ProgressSet, ProgressOn
Esempio
ProgressOff()
Parametri
Valore di ritorno
Nessuna.
Osservazioni
Per saltare un parametro opzionale, lasciare il suo valore di default intatto, usa:
"" per parametri stringa
-1 per parametri numerici
Se ProgressOn è chiamata mentre una progress window già esiste, la finestra è ridisegnata/spostata.
(Se vuoi multiple progress windows simultanee, hai bisogno di usare script multipli.)
Funzioni correlate
ProgressOff, ProgressSet
Esempio
Imposta la posizione e/o il tersto di una finestra Progress bar creata in precedenza.
Parametri
Valore di ritorno
Nessuna.
Osservazioni
Nota che l'argomento testo secondario viene prima dell'argomento testo principale.
Funzioni correlate
ProgressOff, ProgressOn
Esempio
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Per saltare un parametro opzionale, lascia il suo valore di default intatto, usa un valore di -1.
L'immagine è scalata ad una specifica larghezza ed altezza e dovrebbe essere un'immagine Bitmap,
GIF, o JPEG. Le icone (ICO) non saranno visualizzate, sebbene la finestra appaia ancora. Immagini
PNG generano un messaggio di errore di caricamentod, e quindi creano invalidi files/paths.
Le immagini non sono inserite negli eseguibili a meno che usi FileInstall
E' consnetita solo una finestra SplashImage/Testo alla volta; quindi se vuoi elaborare immagini/testi
multiple, semplicemente chiama di nuovo SplashImageOn/SplashTextOn con le nuove informazioni.
Funzioni correlate
SplashOff, SplashTextOn
Esempio
SplashOff ( )
Parametri
Nessuno.
Valore di ritorno
Nessuno.
Osservazioni
Nessuna.
Funzioni correlate
SplashImageOn, SplashTextOn
Esempio
Parametri
y pos posizione opzionale dal top (in pixels) della finestra splash. (il default è centrata)
opzioni addizionali: (aggiungile - il default è 'giustificato al centro/sempre in primo
piano/con titolo')
0 = Giustificato al centro/sempre in primo piano/con titolo (default)
1 = Finestra senza titolo con bordo sottile
opt
2 = Senza l'attributo "sempre in primo piano"
4 = Testo giustificato a sinistra
8 = Testo giustificato a destra
16 = Le finestre possono essere spostate
Font opzionale da usare. (viene usato il font di default della GUI OS se il font è "" o
fontname
non è stato trovato)
font size opzionale. (il default è 12; dimensioni standard sono 6 8 9 10 11 12 14 16
fontsz
18 20 22 24 26 28 36 48 72)
font weight opzionale (0 - 1000, default = 400 = normale). Un valore > 1000 è
fontwt
trattato come zero.
Valore di ritorno
Nessuno.
Osservazioni
Per saltare un parametro opzionale, lascia il suo valore di default intatto, usa un valore di -1.
"" per parametri stringhe
-1 per parametri numerici
E' consentita solo una finestra SplashImage/Testo alla volta; quindi se vuoi elaborare immagini/testi
multiple, semplicemente chiama di nuovo SplashImageOn/SplashTextOn con le nuove informazioni.
E' anche meglio usare ControlSetText per aggiornare il testo senza instablità dell'immagine...
Funzioni correlate
Esempio
SplashTextOn("Titolo", "Il messaggio va qui.", -1, -1, -1, -1, 4, "", 24)
Sleep(3000)
SplashOff()
;; FLICKER
$message = ""
SplashTextOn("TitleFoo", $message, -1, -1, -1, -1, 4, "")
For $x = 1 to 20
$message = $message & $x & @LF
SplashTextOn("TitleFoo", $message, -1, -1, -1, -1, 4, "")
Sleep(100)
Next
;; SMOOTH
$message = ""
SplashTextOn("TitleFoo", $message, -1, -1, -1, -1, 4, "")
For $x = 1 to 20
$message = $message & $x & @LF
ControlSetText("TitleFoo", "", "Static1", $message)
sleep(100)
Next
ToolTip ( "testo" [, x, y] )
Parametri
testo Il testo del tooltip. (Una stringa vuota cancella un tooltip visualizzato)
x, y La posizione x,y del tooltip.
Valore di ritorno
Nessuno.
Osservazioni
Funzioni correlate
TrayTip
Esempio
Parametri
titolo Il titolo appare in grassetto al top del balloon tip. (massimo 63 caratteri)
testo Il messaggio che il "balloon tip" visualizzerà. (massimo 255 caratteri)
Un calcolo approssimativo del tempo in cui il balloon tip sarà visualizzato.
timeout (Windows ha un min e max di circa 10-30 secondi ma non sempre soddisfa il tempo
in questo range.)
[opzionale] Vedi Osservazioni. 0=Nessuna icona (default),
opzione
1=Info icon, 2=Warning icon, 3=Error icon
Valore di ritorno
Nessuno.
Osservazioni
Un Tray tip verrà chiuso se l'icona di AutoIt sparisce. Di conseguenza, il TrayTip può non apparire
se AutoItSetOption("TrayIconHide", 1) è impstata o se l'utente ha disabilitato i balloon tips via
impostazioni del registry!
Windows XP di solito emette un suono quando visualizza un balloon tip. Questo suono può essere
disabilitato aggiungendo 16 al parametro opzioni o impostando un titolo vuoto.
Per cancellare un balloon tip che è stato visualizzato, chiama un altro suggerimento con una stringa
vuota (e qualsiasi titolo).
Funzioni correlate
Esempio
AdlibDisable ( )
Parametri
Nessuna.
Valore di ritorno
Nessuna.
Osservazioni
Nessuna.
Funzioni correlate
AdlibEnable
Esempio
AdlibDisable()
Parametri
Valore di ritorno
Nessuna.
Osservazioni
Ogni 250 ms (o time ms) la "funzione" specificata è chiamata--tipicamente per verificare errori
inattesi. Per esempio, potresti usare adlib in uno script che causa un errore imprevedibile di "window
pop up".
La funzione adlib dovrebbe essere tenuta semplice poichè è eseguita spesso e durante questi
momenti lo script principale è messo in pausa. Inoltre, il parametro time dovrebbe essere usato con
attenzione per evitare sovraccarico della CPU.
Funzioni correlate
AdlibDisable, Call
Esempio
AdlibEnable("myadlib")
;...
Exit
Func myadlib()
If WinActive("Error") Then
;...
EndIf
EndFunc
AutoItWinGetTitle ( )
Parametri
Nessuno.
Valore di ritorno
Nessuno.
Osservazioni
Nessuno.
Funzioni correlate
AutoItWinSetTitle, WinGetTitle
Esempio
$a = AutoItWinGetTitle()
AutoItWinSetTitle ( "newtitle" )
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Funzioni correlate
AutoItWinGetTitle, WinSetTitle
Esempio
Riferimenti di funzioni
BlockInput
BlockInput ( flag )
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Se BlockInput è abilitata, la pressione del tasto Alt non può essere inviato!
La tabella seguente mostra come il comportamento di BlockInput dipende dalla versione di
Windows; comunque, premendo Ctrl+Alt+Del su ogni piattaforma riabiliterà l'input a causa di una
caratteristica dell'API di Windows.
Nota che funzioni come WinMove() funzioneranno ancora su Windows 98/Me quando BlockInput è
abilitata.
Funzioni correlate
Send
Esempio
Run("notepad")
WinWaitActive("Untitled - Notepad")
Send("{F5}") ;incolla ora e data
BlockInput(0)
Abilita o disabilita la capacità dell'utente di chiudere uno script dal menu della tray icon.
Break ( modalità )
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Funzioni correlate
Nessuna.
Esempio
Call ( "funzione" )
Parametri
Valore di ritorno
Osservazioni
la funzione non può ricevere nessun parametro e non può esserre una funzione AutoIt built-in.
Funzioni correlate
AdlibEnable
Esempio
For $i = 1 to 2
$ret = Call("test" & $i)
MsgBox(4096,"", $ret)
Next
Func test1()
Ritorna "Hello"
EndFunc
Func test2()
Ritorna "Bye"
EndFunc
Parametri
drive La lettera del drive dello sportello CD da controllare, nel formato D:, E:, etc.
status Specifica se vuoi che lo sportello CD sia aperto o chiuso: "open" o "closed"
Valore di ritorno
Successo: Ritorna 1.
Ritorna 0 se il drive è bloccato da un software di masterizzazione o se la lettera del
Insuccesso:
drive non è un CD drive.
Osservazioni
CDTray funziona secondo aspettative su CD drives virtuali come quelli di DAEMON Tools.
CDTray non funziona su CD drives non-locali/mappati; CDTray deve essere eseguito su computer
per i quali interessa il CD locale.
CDTray("X:", "close") tende a ritornare 0 anche su cd trays di computer portatili che possono essere
chiusi solo manualmente.
Funzioni correlate
DriveGetType, DriveStatus
Esempio
MemGetStats ( )
Parametri
Nessuna.
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
Nessuna.
Esempio
$mem = MemGetStats()
MsgBox(0, "RAM fisica totale (KB):", $mem[1])
Parametri
Valore di ritorno
Osservazioni
Eseguire un checksum di una regione comporta molto tempo di elaborazione, perciò usa la regione
più piccola che puoi per ridurre i tempi di CPU. Sulle stesse macchine il checksum dell'intero
schermo può comportare diversi secondi!
Un checksum ti permette soltanto di vedere che "qualcosa" è cambiato in una regione - non ti dice
cosa esattamente è cambiato.
Funzioni correlate
Esempio
; Aspetta che la regione cambi, la regione è controllata ogni 100ms per ridurre i tempi di CPU
While $checksum = PixelChecksum(0,0, 50, 50)
Sleep(100)
WEnd
PixelGetColor
PixelGetColor ( x , y )
Parametri
Valore di ritorno
Osservazioni
Versioni precedenti di AutoIt (prima della v3.0.102) usavano il formato BGR per definire un colore -
le versioni più nuove usano RGB per default ma questa caratteristica può essere cambiata usando
l'opzione ColorMode.
Funzioni correlate
Esempio
PixelSearch ( sinistra, margine superiore, destra, margine inferiore, colore [, variazione della
tonalità] [, step]] )
Parametri
Valore di ritorno
Osservazioni
Performing a search of a region can be time consuming, so use the smallest region you are able to
reduce CPU load.
Funzioni correlate
Esempio
; Trova un pixel in puro rosso o un pixel rosso entro 10 variazioni di tonalità di rosso puro
$coord = PixelSearch( 0, 0, 20, 300, 0xFF0000, 10 )
If Not @error Then
MsgBox(0, "X e Y sono:", $coord[0] & "," & $coord[1])
EndIf
SetError ( code )
Parametri
Valore di ritorno
Nessuna.
Osservazioni
Il codice @error è valido solo finchè viene chiamata la prossima funzione. Di conseguenza, puoi
aver bisogno di fare una copia di backup dello stato di @error in una variabile se la stai testando in
un loop While-Wend.
Funzioni correlate
Nessuna.
Esempio
$result = myDiv(5, 0)
If @error Then
MsgBox(4096,"Error", "Divisione per Zero")
Else
MsgBox(4096, "Result", $result)
EndIf
Exit
Parametri
filename Il nome del file che deve essere eseguito (tipicamente un WAV o MP3)
(opzionale) Questo flag determina se lo script dovrebbe attendere che finisca il
suono prima di continuare:
attesa
1 = aspetta finchè il suono finisce
0 = continua lo script mentre il suono è in esecuzione (default)
Valore di ritorno
Osservazioni
Funzioni correlate
SoundSetWaveVolume
Esempio
SoundPlay("C:\Windows\media\tada.wav")
SoundSetWaveVolume ( percentuale )
Parametri
Valore di ritorno
Successo: Nessuno.
Insuccesso: Imposta @error a 1 se la percentuale non è valida.
Osservazioni
Questa funzione controlla il volume Wave, e non il controllo di volume master. Inoltre, un valore di
Zero non imposta lo stato mute.
Funzioni correlate
SoundPlay
Esempio
SoundSetWaveVolume(50)
TimerDiff ( timestamp )
Parametri
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
TimerInit
Esempio
$begin = TimerInit()
sleep(3000)
$dif = TimerDiff($begin)
MsgBox(0,"Differenza di tempo",$dif)
TimerInit ( )
Parametri
Nessuno.
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
TimerDiff
Esempio
$begin = TimerInit()
sleep(3000)
$dif = TimerDiff($begin)
MsgBox(0,"Differenza di Tempo",$dif)
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0.
Osservazioni
Internet Explorer 3 o successivi deve essere installato affinchè questa funzione lavori. Firewalls o la
presenza di schede di rete multiple possono causare errori. Inoltre, alcuni siti web possono bloccare
questi downloads.
Il file è ottenuto dalla cache di IE se possibile. Potresi forzare un (re)download da internet fornendo
un parametro cgi contraffatto, ad esempio: "http://.../test.exe?fakeParam=42"
Funzioni correlate
Nessuna.
Esempio
URLDownloadToFile("http://www.mozilla.org", "C:\foo.html")
URLDownloadToFile("http://www.hiddensoft.com", "C:\mydownload.htm")
Parametri
Valore di ritorno
Nessuna.
Osservazioni
Se un utente ha invertito i pulsanti primario (sinistro) e secondario (destro), uno script può non
funzionare secondo aspettative.... Vedi l'esempio per una soluzione.
Funzioni correlate
Esempio
Dim $primary
Dim $secondary
;Determina se l'utente ha invertito i pulsanti destro e sinistro del mouse
$k = RegRead("HKEY_CURRENT_USER\Control Panel\Mouse", "SwapMouseButtons")
Parametri
Valore di ritorno
Nessuna.
Osservazioni
Se un utente ha invertito i pulsanti primario (sinistro) e secondario (destro), uno script può non
funzionare secondo aspettative.... Vedi l'esempio per una soluzione.
Funzioni correlate
Esempio
MouseDown ( "pulsante" )
Parametri
Valore di ritorno
Nessuna.
Osservazioni
Funzioni correlate
Esempio
MouseDown("left")
Sleep(100)
MouseUp("left")
MouseGetCursor ( )
Parametri
Nessuna.
Valore di ritorno
8 = SIZE
9 = SIZEALL
10 = SIZENESW
11 = SIZENS
12 = SIZENWSE
13 = SIZEWE
14 = UPARROW
15 = WAIT
Osservazioni
Nessuna.
Funzioni correlate
MouseGetPos
Esempio
$cursor = MouseGetCursor()
MsgBox(4096, "ID = " & $cursor, "Che significa " & $IDs[$cursor])
MouseGetPos ( )
Parametri
Nessuna.
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
$pos = MouseGetPos()
MsgBox(0, "Mouse x,y:", $pos[0] & "," & $pos[1])
MouseMove ( x, y [, velocità] )
Parametri
[opzionale] la velocità con la quale muovere il mouse nel range da 1 (la più veloce)
Valore di ritorno
Il movimento del mouse da parte dell'utente è intralciato durante un'operazione di MouseMove non
istantanea.
Se MouseCoordMode imposta la posizione relativa, i numeri possono essere negativi.
Osservazioni
Nessuna.
Funzioni correlate
Esempio
MouseMove(10, 100)
MouseMove(700, 700, 0)
MouseUp ( "pulsante" )
Parametri
Valore di ritorno
Nessuna.
Osservazioni
Funzioni correlate
Esempio
MouseDown("left")
Sleep(100)
MouseUp("left")
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Funzioni correlate
Esempio
ProcessClose ( "processo" )
Parametri
Valore di ritorno
Osservazioni
I nomi di Processo sono eseguibili senza il path completo, ad es., "notepad.exe" o "winword.exe"
Se processi multipli hanno lo stesso nome, quello con il PID più alto sarà terminato--
indipendentemente da quanto di recente il processo è stato riprodotto.
PID è un numero univoco che identifica un Processo. Un PID può essere ottenuto con i comandi
ProcessExists o Run.
Al fine di funzionare sotto Windows NT 4.0, ProcessWaitClose richiede il file PSAIP.DLL (incluso
nella directory di installazione di AutoIt).
Il processo è sondato approssimativamente ogni 250 millisecondi.
Funzioni correlate
Esempio
ProcessClose("notepad.exe")
ProcessExists ( "processo" )
Parametri
Valore di ritorno
Osservazioni
I nomi di Processo sono eseguibili senza il path completo, ad es., "notepad.exe" o "winword.exe"
PID è un numero univoco che identifica un Processo. Un PID può essere ottenuto con i comandi
ProcessExists o Run.
Al fine di funzionare sotto Windows NT 4.0, ProcessWaitClose richiede il file PSAIP.DLL (incluso
nella directory di installazione di AutoIt).
Il processo è sondato approssimativamente ogni 250 millisecondi.
Funzioni correlate
Esempio
If ProcessExists("notepad.exe") Then
MsgBox(0, "Esempio", "Notepad è in esecuzione.")
EndIf
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 e imposta @error a 1. Può impostare @error a 2 se tenti di usare una classe di
priorità non supportata.
Osservazioni
Le classi di priorità Above Normal e Below Normal pnon sono supportate su Windows 95/98/ME.
Se provi a usarle su quelle piattaforme platforms, la funzione fallirà e @error sarà impostato a 2.
Funzioni correlate
Esempio
Run("Notepad.exe")
ProcessSetPriority("notepad.exe", 0)
; Notepad dovrebbe avere ora la priorità Idle/Low
Mette in pausa l'esecuzione d uno script fino a che un dato processo esiste.
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso:Ritorna 0 if l'attesa va oltre il timeout.
Osservazioni
I nomi di Processo sono eseguibili senza il path completo, ad es., "notepad.exe" o "winword.exe"
Al fine di funzionare sotto Windows NT 4.0, ProcessWait richiede il file PSAIP.DLL (incluso nella
directory di installazione di AutoIt).
Questa funzione è la sola funzione di processo a non accettare un PID. Poichè i PIDs sono allocati
dinamicamente, attendere che un particolare PID esista non ha senso.
Il processo è sondato approssimativamente ogni 250 millisecondi.
Funzioni correlate
Esempio
ProcessWait("notepad.exe")
Mette in pausa l'esecuzione di uno script fino a che un dato processo non esiste più.
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso:Ritorna 0 if l'attesa va oltre il timeout.
Osservazioni
I nomi di Processo sono eseguibili senza il path completo, ad es., "notepad.exe" o "winword.exe"
PID è un numero univoco che identifica un Processo. Un PID può essere ottenuto con i comandi
ProcessExists o Run.
AAl fine di funzionare sotto Windows NT 4.0, ProcessWait richiede il file PSAIP.DLL (incluso
nella directory di installazione di AutoIt).
Il processo è sondato approssimativamente ogni 250 millisecondi.
Funzioni correlate
Esempio
; Questa istruzione aspetterà finchè questa particolare istanza di notepad sarà chiusa
$PID = Run("notepad.exe")
ProcessWaitClose($PID)
Parametri
Valore di ritorno
Osservazioni
Per eseguire comandi DOS (console), prova RunWait(@ComSpec & " /c " & 'commandName', "",
@SW_HIDE)
Dopo l'esecuzione del programma richiesto lo script continua. Per mettere in pausa l'esecuzione dello
script until il programma attivato ha finito usa la funzione RunWait.
Per default lo script terminerà con un fatal error se la funzione Run fallisce. Per impostare @error a 1
come indicazione dell'insuccesso, vedi AutoItSetOption.
Funzioni correlate
Esempio
Inizializza un insieme di credenziali utente da usare durante operazioni Run e RunWait. SOLO
2000/XP o successivi.
Parametri
Valore di ritorno
Osservazioni
Questa funzione consente che funzioni Run e RunWait successive siano eseguite con un utente
differente (ad es. Administrator). La funzione lavora solo su piattaforme 2000/XP (o successive).
Utenti NT4 dovrebbero installare e usare il comando SU dal Resource Kit NT.
Il "Secondary Logon service" o "RunAs service" non deve essere disabilitato se vuoi che questa
funzione lavori.
Per rimuovere l'impostazione dei dettagli di RunAs, usa la funzione senza parametri: RunAsSet().
Funzioni correlate
Esempio
Esegue un programma esterno e mette in pausa l'esecuzione dello script finchè il programma finisce.
Parametri
Valore di ritorno
Osservazioni
Per eseguire comandi DOS (console), prova RunWait(@ComSpec & " /c " & 'commandName', "",
@SW_HIDE)
Dopo aver eseguito il programma richiesto lo script fa una pausa finchè il programma termina. Per
eseguire un programma e continuare immediatamente l'esecuzione dello script usa la funzione Run.
Per default lo script terminerà con un errore fatale se la funzione Run fallisce. Per impostare @error
a 1 come indicazione dell'insuccesso, vedi AutoItSetOption.
Funzioni correlate
Esempio
Arresta il sistema.
Shutdown ( codice )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0.
Osservazioni
Aggiungi i valori richiesti insieme. Per chiudere il sistema e spegnere la corrente, ad esempio, il
codice dovrebbe essere 9 (shutdown + power down = 1 + 8 = 9).
Gli stati di Standby o hibernate possono essere ottenuti con software di terze parti come ad esempio
http://grc.com/wizmo/wizmo.htm
Funzioni correlate
ProcessClose
Esempio
Sleep ( ritardo )
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Funzioni correlate
Nessuna.
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Special: Ritorna 0 se la chiave/valore non esiste.
Insuccesso: Ritorna 2 se si verifica un errore cancellando la chiave/valore.
Osservazioni
Per accedere al valore di (Default) usa "" (una stringa vuota) come valuename.
E' possibile accedere a Registry remoti usando una keyname nella forma
"\\computername\keyname". Per usare questa caratteristica devi avere i corretti diritti di accesso su
NT/2000/XP/2003, o se stai usando un OS basato su 9x il PC remoto PC deve avere il servizio di
Registry remoto installato per primo (Vedi Microsoft Knowledge Base Article - 141460).
Funzioni correlate
RegRead, RegWrite
Esempio
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE", "TestKey")
Parametri
Valore di ritorno
Osservazioni
Una chiave del registry key deve cominciare con "HKEY_LOCAL_MACHINE" ("HKLM") o
"HKEY_USERS" ("HKU") o "HKEY_CURRENT_USER" ("HKCU") o
"HKEY_CLASSES_ROOT" ("HKCR") o "HKEY_CURRENT_CONFIG" ("HKCC").
Funzioni correlate
Esempio
$var = RegEnumKey("HKEY_LOCAL_MACHINE\SOFTWARE", 1)
MsgBox(4096, "Prima SubKey sotto HKLM\Software: ", $var)
$var = RegEnumKey("HKEY_LOCAL_MACHINE\SOFTWARE", 2)
MsgBox(4096, "Seconda SubKey sotto HKLM\Software: ", $var)
Parametri
Valore di ritorno
Osservazioni
Una chiave del registry key deve cominciare con "HKEY_LOCAL_MACHINE" ("HKLM") o
"HKEY_USERS" ("HKU") o "HKEY_CURRENT_USER" ("HKCU") o
"HKEY_CLASSES_ROOT" ("HKCR") o "HKEY_CURRENT_CONFIG" ("HKCC").
Funzioni correlate
Esempio
$var = RegEnumVal("HKEY_LOCAL_MACHINE\SOFTWARE\HiddenSoft\AutoIt3", 1)
MsgBox(4096, "Primo Value Name sotto AutoIt3 key", $var)
$var = RegEnumVal("HKEY_LOCAL_MACHINE\SOFTWARE\HiddenSoft\AutoIt3", 2)
MsgBox(4096, "Secondo Value Name sotto AutoIt3 key: ", $var)
Parametri
Valore di ritorno
Osservazioni
Una chiave del registry key deve cominciare con "HKEY_LOCAL_MACHINE" ("HKLM") o
"HKEY_USERS" ("HKU") o "HKEY_CURRENT_USER" ("HKCU") o
"HKEY_CLASSES_ROOT" ("HKCR") o "HKEY_CURRENT_CONFIG" ("HKCC").
Quando leggi una chiave di tipo REG_BINARY il risultato è una stringa di caratteri esadecimali, ad
Quando leggi una chiave di tipo REG_MULTI_SZ i record multipli sono separati da @LF - usa con
StringSplit(..., @LF) per ottenere ogni record.
E' possibile accedere a Registry remoti usando una keyname nella forma
"\\computername\keyname". Per usare questa caratteristica devi avere i corretti diritti di accesso su
NT/2000/XP/2003, o se stai usando un OS basato su 9x il PC remoto PC deve avere il servizio di
Registry remoto installato per primo (Vedi Microsoft Knowledge Base Article - 141460).
Funzioni correlate
Esempio
$var = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion",
"ProgramFilesDir")
MsgBox(4096, "Program files sono in:", $var)
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se si verifica un errore scrivendo una chiave o valore nel registry.
Osservazioni
Quando leggi una chiave di tipo REG_BINARY il risultato è una stringa di caratteri esadecimali, ad
es. il valore REG_BINARY di 01,a9,ff,77 sarà letto come stringa "01A9FF77".
Quando leggi una chiave di tipo REG_MULTI_SZ i record multipli sono separati da @LF - usa con
StringSplit(..., @LF) per ottenere ogni record.
E' possibile accedere a Registry remoti usando una keyname nella forma
"\\computername\keyname". Per usare questa caratteristica devi avere i corretti diritti di accesso su
NT/2000/XP/2003, o se stai usando un OS basato su 9x il PC remoto PC deve avere il servizio di
Registry remoto installato per primo (Vedi Microsoft Knowledge Base Article - 141460).
Funzioni correlate
RegDelete, RegRead
Esempio
Prende una stringa e prefissa tutti i caratteri linefeed ( Chr(10) ) con un carattere carriage return ( Chr
(13) ).
StringAddCR ( "stringa" )
Parametri
Valore di ritorno
Ritorna la stringa con tutte le istanze di caratteri linefeed ( @LF ) prefissate con un carattere carriage
return ( @CR ).
Osservazioni
Nessuna.
Funzioni correlate
StringStripCR, StringReplace
Esempio
$old = "Notepad" & @LF & "è in attesa di testo" & @LF & "CRLF."
$new = StringAddCR($old)
Parametri
Valore di ritorno
Osservazioni
La posizione dl primo carattere è 1. Se l'occorrenza è fornita, deve essere anche fornito casesense.
Funzioni correlate
Esempio
$location = StringInStr("How much wood could a woodchuch chuch is a woodchuck could chuck
wood?", "wood", 0, 3) ; Trovata la terza occorrenza di "wood"
StringIsAlNum ( "stringa" )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la stringa contiene caratteri non alfanumerici.
Osservazioni
Tieni presente che ogni carattere whitespace (carriage return, tab, line feed,...) causerà il fatto che
StringIsAlNum ritorni 0.
Funzioni correlate
Esempio
StringIsAlpha ( "stringa" )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la stringa contiene caratteri non alfabetici.
Osservazioni
Tieni presente che ogni carattere whitespace (carriage return, tab, line feed,...) causerà il fatto che
StringIsAlpha ritorni 0.
Funzioni correlate
Esempio
Verifica se una stringa contiene solo caratteri ASCII nel range 0x00 - 0x7f (0 - 127).
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la stringa contiene caratteri ASCII estesi.
Osservazioni
Nessuna.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la stringa contiene caratteri non numerici.
Osservazioni
Funzioni correlate
Esempio
StringIsDigit("12333") ;returns 1
StringIsDigit("1.5") ;ritorna 0 a causa del punto decimale
StringIsDigit("1 2 3") ;returns 0 a causa di caratteri whitespace
StringIsDigit("") ;ritorna 1
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se not floating point format.
Osservazioni
A stringa is a float se it contiene at least one decimal digit e exactly one period; the only other
character allowed is an opzionale plus or minus at the beginning. (StringIsFloat does not accept a
comma character as the decimal point even se the computer Locale settings use that symbol.) If
parametro is not a stringa , its valore is convertito to a stringa . See examples.
Funzioni correlate
StringIsInt, IsFloat
Esempio
StringIsFloat("1.5") ;returns 1
StringIsFloat("7.") ;returns 1 since contiene decimal
StringIsFloat("-.0") ;returns 1
StringIsFloat("3/4") ;returns 0 since '3' slash '4' is not a float
Parametri
formato di
Il formato e i flags da usare (vedi Osservazioni).
controllo
$var1...$var32 Fino a 32 variabili che saranno prodotte in output in base al "formato di controllo".
Valore di ritorno
Ritorna la stringa formattata in base al "formato della variabile" definito nel parametro "formato di
controllo".
Osservazioni
Il secondo campo opzionale della specifica di formato è la specifica della larghezza. L'argomento
larghezza è un numero intero decimale non negativo che controlla il minimo numero di caratteri
stampati. Se il numero di caratteri nel valore di output è minore della larghezza specificata, caratteri
blanks vengono aggiunti alla sinistra o alla destra dei valori — dipende se il flag (per allineamento a
sinistra) è specificato — finchè la larghezza minima è raggiunta. Se la larghezza è prefissata con 0,
vengono aggiunti zero finchè la larghezza minima viene raggiunta (non utile per numeri allineati a
sinistra).
La specifica della larghezza non causa mai il fatto che un valore sia troncato. Se il numero di
caratteri nel valore di output è più grande della larghezza specificata, o se la larghezza non è fornita,
tutti i caratteri del valore sono stampati (soggetti alla esattezza della specifica).
Tipo do specifica
Tipo di
Tipo Formato dell'output
variabile
d, i Numero numero decimale con segno.
o Numero Numero in base otto senza segno.
u Numero Numero decimale senza segno.
x Numero Numero esadecimale senza segno, che usa "abcdef".
X Numero Numero esadecimale senza segno, che usa "ABCDEF".
Valore con segno che ha la forma [ - ]d.dddd e [sign]ddd dove d è una cifra
e Float decimale singola, dddd è uno o più numeri decimali, ddd è esattamente tre numeri
decimali, e sign è + o -.
Specifica di precisione
Il terzo campo opzionale della specifica di formato è la specifica di prcisione. Specifica un numero
decimale non egativo , preceduto da un punto (.), che specifica il numero di caratteri da stampare, il
numero di posizioni decimali, o il numero di cifre significative (Vedi la tabella di seguito). A
differenza della specifica di larghezza, la specifica di precisione può causare sia troncamento del
valore di output o arrotondamento del valore floating-point. Se la precisione è specificata come 0 e il
valore che deve essere convertito è 0,il risultato è che non ci sono caratteri in output, come mostrato
sotto:
Funzioni correlate
Nessuna.
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la stringa non può essere un numero intero.
Osservazioni
StringIsInt ritorna 1 anche per espressioni non-stringa con un numero intero; comunque, StringIsInt
ritorna 0 per espressioni esadecimali come "4ff0". I soli caratteri non numerici consentiti sono i segni
più o meno all'inizio della stringa.
Funzioni correlate
Esempio
StringIsInt("+42") ;ritorna 1
StringIsInt("-00") ;ritorna 1
StringIsInt("1.0") ;ritorna 0 a causa del punto decimale
StringIsInt(1.0) ;ritorna 1 a causa della conversione numero-stringa
StringIsInt("1+2") ;ritorna 0 a causa del segno più
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la stringa contiene caratteri non minuscoli.
Osservazioni
Funzioni correlate
Esempio
If StringIsInt("abcfoo") Then
MsgBox(0, "Risultato:", "La stringa contiene solo caratteri minuscoli"
EndIf
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la stringa contiene caratteri diversi da whitespace.
Osservazioni
Whitespace include caratteri da Chr(9) a Chr(13) che sono HorizontalTab, LineFeed, VerticalTab,
FormFeed, e CarriageReturn.
Whitespace include anche la stringa null ( Chr(0) ) e il carattere space standard ( Chr(32) ).
Funzioni correlate
Esempio
$x = " " & @LF & Chr(11) & @TAB & " " & @CRLF
If StringIsSpace($x) Then
MsgBox(0,"", "La stringa contiene solo caratteri whitespace.")
EndIf
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la stringa contiene caratteri non maiuscoli.
Osservazioni
Funzioni correlate
Esempio
If StringIsInt("ABCDF") Then
MsgBox(4096,"", "La stringa contiene solo caratteri MAIUSCOLI"
EndIf
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la stringa contiene caratteri non esadecimali.
Osservazioni
Caratteri validi sono 0123456789abcdefABCDEF Nota che una stringa contenente whitespace o il
prefisso "0x" causerà il fatto che StringIsXDigit ritorni 0.
Funzioni correlate
Esempio
StringIsXDigit("00FC") ;ritorna 1
StringIsXDigit("2570") ;ritorna 1
StringIsXDigit("a cafe") ;ritorna 0 a causa di caratteri space
StringIsXDigit(1 + 2.0) ;ritorna 1 a causa della conversione numero-stringa
Parametri
Valore di ritorno
Ritorna una stringa contenente un determinato numero di caratteri più a sinistra di una stringa.
Osservazioni
Se il contatore eccede la lunghezza della stringa o se il contatore è negativo, l'intera stringa sarà
ritornata.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Osservazioni
Se start è fuori dai margini della stringa, viene ritornata una stringa vuota. Se start è valida ma il
contatore è fuori dai margini, viene ritornata l'intera rimanenza della stringa.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Osservazioni
"bba"
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Ritorna una stringa contenente un determinato numero di caratteri più a destra di una stringa.
Osservazioni
Se contatore eccede la lunghezza della stringa o se contatore è negativo, l'intera stringa viene
ritornata.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Ritorna un array, il primo elemento ($array[0]) contiene il numero di stringhe ritornate, gli elementi
rimanenti ($array[1], $array[2], etc.) contengono le stringhe delimitate.
Se nessun delimitatore viene trovato @error è impostato a 1, il contatore è 1 ($array[0]) e viene
ritornata la stringa completa ($array[1]).
Osservazioni
Se usi una stringa blank "" come delimitatore, ogni carattere sarà ritornato come un elemento.
Se il delimitatore che vuoi usare è una sottostringa invece di caratteri singoli, vedi il secondo
esempio di seguito.
StringSplit è molto utile come alternativa a StringInStr e come strumento per popolare un array.
Funzioni correlate
Esempio
StringStripCR ( "stringa" )
Parametri
Valore di ritorno
Ritorna la stringa con tutte le istanze del carattere @CR (Chr(13)) rimosse.
Osservazioni
Nessuna.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
Esempio
Asc ( "char" )
Parametri
Il carattere per il quale orttenere il codice. Se è usata una stringa, viene fornito il
char
codice per il primo carattere.
Valore di ritorno
Ritorni il codice ASCII dello specifico carattere. Se viene passato un numero invece di un char, il
risultato è -1.
Osservazioni
Funzioni correlate
Chr
Esempi
$code = Asc("A")
MsgBox(0, "ASCII code for A:", $code)
Chr
Chr ( ASCIIcode )
Parametri
Valore di rotorno
Osservazioni
Funzioni correlate
Asc
Esempio
$text = ""
For $i = 65 to 90
$text = $text & Chr($i)
Next
MsgBox(0, "Uppercase alphabet", $text)
Dec ( "hex" )
Parametri
Valore di ritorno
Osservazioni
La funzione va bene solo con numeri che si adattano ad un numero intero a 32 bit con segno (-
2147483648 a 2147483647)
Funzioni correlate
Hex
Esempio
Eval ( espressione )
Parametri
espressione stringa che rappresenta il nome della variabile che deve essere valutata.
Valore di ritorno
Osservazioni
Nessuna.
Funzioni correlate
IsDeclared
Esempio
Dim $a_b = 12
$s = Eval("a" & "_" & "b") ; $s è impostato a 12
Parametri
Valore di ritorno
Osservazioni
La funzione lavora solo con numeri che sono contenuti in un numero intero a 32 bit con segno (da -
2147483648 a 2147483647)
La funzione imposterà anche @error a 1 se non sono state richieste abbastanza cifre - la stringa
restituita ritornerà in questo caso le cifre meno significative.
Funzioni correlate
Dec
Esempio
Int ( espressione )
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
IsAdmin ( )
Parametri
Nessuna.
Valore di ritorno
Osservazioni
Funzioni correlate
RunAsSet
Esempio
IsArray ( variabile )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se il parametro non è una variabile array.
Osservazioni
Funzioni correlate
Esempio
IsDeclared ( espressione )
Parametri
espressione stringa che rappresenta il nome della variabile che deve essere verificata.
Valore di ritorno
Successo: Ritorna 1 per variabili Globali o variabili dichiarate fuori dalle funzioni.
Speciale: -1 per variabili Locali.
Insuccesso: Ritorna 0 quando nessuna variabile può essere trovata.
Osservazioni
Nessuna.
Funzioni correlate
Eval
Esempio
$a=1
IsFloat ( variabile )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se l'espressione non è di tipo float.
Osservazioni
Funzioni correlate
Esempio
IsFloat(3.14159) ;ritorna 1
IsFloat(3.000) ;ritorna 0 finchè il valore è un numero intero 3
IsFloat(1/2 - 5) ;ritorna 1
IsFloat(1.5e3) ;ritorna 0 finchè 1.5e3 = 1500
IsFloat("12.345) ;ritorna 0 finchè è una stringa
IsInt ( variabile )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se l'espressione non è un numero intero.
Osservazioni
Funzioni correlate
Esempio
IsInt(-12345) ;ritorna 1
IsInt(3.0000) ;ritorna 1
IsInt("5432") ;ritorna 0 finchè è una stringa
IsInt(7.5 - 4.5) ;ritorna 1 finchè esprime numericamente il numero intero 3
IsNumber ( variabile )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se l'espressione non è di tipo numerico.
Osservazioni
I tipi Variant possono essere di due tipi base: Stringhe e Numeri. Inoltre, un numero può essere
intero o frazionario/floating-point.
Funzioni correlate
Esempio
IsNumber(42)
IsString ( variabile )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se l'espressione non è di tipo stringa.
Osservazioni
Nessuna.
Funzioni correlate
Esempio
$x = IsString("foo")
Number
Number ( espressione )
Parametri
Valore di ritorno
Ritorna un numero.
Osservazioni
Se una stringa comincia con lettere ha un valore numerico di zero. Una stringa che comincia con
cifre viene trattata senza considerare caratteri non numerici.
Funzioni correlate
Int, String
Esempio
$w = Number(1+2+10) ;ritorna 13
$x = Number("3.14") ;ritorna 3.14
$y = Number("24/7") ;ritorna 24
$z = Number("tmp3") ;ritorna 0
String ( espressione )
Parametri
Valore di ritorno
Osservazioni
La massima lunghezza di una stringa è di 2147483647 caratteri (ma tieni presente che nessuna linea
in uno script AutoIt può eccedere 4095 caratteri.)
Funzioni correlate
Esempio
$var = String(10)
;$var è la stringa "10"
Parametri
Valore di ritorno
Osservazioni
Ricorda che UBound è più grande di uno dell'indice dell'ultimo elemento di un array!
Funzioni correlate
Dim
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0.
Osservazioni
Potrebbe essere necessario per prima cosa attribuire il focus al controllo con il comando
ControlFocus.
Quando usi un nome di controllo nelle funzioni Control, è necessario aggiungere un numero alla fine
del nome del controllo per indicare quale controllo. Ad esempio, se ci sono due controlli chiamati
"MDIClient", potresti referenziarli come "MDIClient1" e "MDIClient2".
Simulare un click su un controllo è accurato al 100% solo quando il controllo della finestra padre è
attivo - ciò è ottenuto automaticamente.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Dipende dal comando come è mostrato nella tavola seguente. Nel caso di un errore (come ad
esempio un comando o una finestra/controllo invalidi), @error=1.
Comando, opzione Valore di ritorno
"IsVisible", "" Ritorna 1 se il Controllo è visibile, 0 in caso contrario
"IsEnabled", "" Ritorna 1 se il Controllo è abilitato, 0 in caso contrario
"ShowDropDown", "" Apre una ComboBox
"HideDropDown", "" Chiude una ComboBox
"AddString", 'stringa ' Aggiunge una stringa alla fine di una ListBox o ComboBox
"DelString",
Cancella l'occorrenza di una stringa in una ListBox o ComboBox
occorrenza
"FindString", 'stringa ' Ritorna l'occorrenza di una stringa esatta in una ListBox o ComboBox
"SetCurrentSelection",
Imposta la selezione dell'occorrenza corrente in una ListBox o ComboBox
occorrenza
"SelectString", 'stringa
Imposta la selezione in base ad una stringa in una ListBox o ComboBox
'
"IsChecked", "" Ritorna 1 se Button è marcato, 0 in caso contrario
"Check", "" Seleziona radio o check Button
"UnCheck", "" Deseleziona radio o check Button
"GetCurrentLine", "" Ritorna la linea # dove è posizionato il cursore in un Edit
"GetCurrentCol", "" Ritorna la colonna # dove è posizionato il cursore in un Edit
"GetCurrentSelection",
Ritorna il nome dell'elemento selezionato in una ListBox o ComboBox
""
"GetLineCount", "" Ritorna il # di linee in un Edit
"GetLine", line# Ritorna il testo alla linea # di un Edit
"GetSelected", "" Ritorna il testo selezionato di un Edit
"EditPaste", 'stringa ' Incolla la 'stringa' alla posizione del cursore dell'Edit
"CurrentTab", "" Ritorna il Tab attivo di un controllo SysTabControl32
"TabRight", "" Muove al prossimo tab a destra di un controllo SysTabControl32
"TabLeft", "" Muove al prossimo tab a sinistra di un controllo SysTabControl32
Osservazioni
Certi comandi che funzionano con Combo e ListBox non funzionano con controlli "ComboLBox".
Quando usi un nome di controllo nelle funzioni Control, è necessario aggiungere un numero alla fine
del nome per indicare quale controllo. Ad esempio, se ci sono due controlli chiamati "MDIClient",
puoi referenziarli come "MDIClient1" e "MDIClient2". Usa AU3_Spy.exe per ottenere il numero di
un controllo.
Quando usi il testo invece del ClassName# in comandi "Control", assicurati di usare l'intero
testo del controllo. Un testo parziale sarebbe insufficiente.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0.
Osservazioni
Quando usi un nome di controllo nelle funzioni Control, è necessario aggiungere un numero alla fine
del nome per indicare quale controllo. Per esempio, se ci sono due controlli chiamati "MDIClient",
puoi referenziarli come "MDIClient1" e "MDIClient2".
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0.
Osservazioni
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0.
Osservazioni
Quando usi un nome di controllo nelle funzioni Control, è necessario aggiungere un numero alla fine
del nome per indicare quale controllo. Per esempio, se ci sono due controlli chiamati "MDIClient",
puoi referenziarli come "MDIClient1" e "MDIClient2".
Funzioni correlate
ControlCommand, WinActivate
Esempio
Ritorna il ControlRef# del controllo che ha il focus della tastiera all'interno di una specifica finestra.
Parametri
Valore di ritorno
Ritorna il ControlRef# del controllo che ha il focus della tastiera all'interno di una
Successo:
specifica finestra.
Insuccesso: Imposta @error a 1 se la finestra non è stata trovata.
Osservazioni
Nessuna.
Funzioni correlate
Esempio
$a = ControlGetFocus("Untitled - Notepad")
Parametri
Valore di ritorno
Osservazioni
Quando usi un nome di controllo nelle funzioni Control, è necessario aggiungere un numero alla fine
del nome per indicare quale controllo. Per esempio, se ci sono due controlli chiamati "MDIClient",
puoi referenziarli come "MDIClient1" e "MDIClient2".
Funzioni correlate
Esempio
ControlGetText
Parametri
Valore di ritorno
Osservazioni
Quando usi un nome di controllo nelle funzioni Control, è necessario aggiungere un numero alla fine
del nome per indicare quale controllo. Per esempio, se ci sono due controlli chiamati "MDIClient",
puoi referenziarli come "MDIClient1" e "MDIClient2".
Funzioni correlate
Esempio
Nasconde un controllo.
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la finestra/controllo non viene trovata.
Osservazioni
Quando usi un nome di controllo nelle funzioni Control, è necessario aggiungere un numero alla fine
del nome per indicare quale controllo. Per esempio, se ci sono due controlli chiamati "MDIClient",
puoi referenziarli come "MDIClient1" e "MDIClient2".
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la finestra/controllo non viene trovata.
Osservazioni
Quando usi un nome di controllo nelle funzioni Control, è necessario aggiungere un numero alla fine
del nome per indicare quale controllo. Per esempio, se ci sono due controlli chiamati "MDIClient",
puoi referenziarli come "MDIClient1" e "MDIClient2".
Funzioni correlate
ControlCommand, WinMove
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la finestra/controllo non viene trovata.
Osservazioni
ControlSend può essere molto utile per inviare lettere maiuscole senza fare confusione con lo stato di
"Shift."
Quando usi un nome di controllo nelle funzioni Control, è necessario aggiungere un numero alla fine
del nome per indicare quale controllo. Per esempio, se ci sono due controlli chiamati "MDIClient",
puoi referenziarli come "MDIClient1" e "MDIClient2".
Nota, questa funzione non può inviare tutti i caratteri della solita funzione Send (particolarmente
ALT keys) ma può inviare la maggioranza di essi--anche a finestre non attive o nascoste!
Funzioni correlate
ControlCommand, Send
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la finestra/controllo non viene trovata.
Osservazioni
Quando usi un nome di controllo nelle funzioni Control, è necessario aggiungere un numero alla fine
del nome per indicare quale controllo. Per esempio, se ci sono due controlli chiamati "MDIClient",
puoi referenziarli come "MDIClient1" e "MDIClient2".
Funzioni correlate
ControlGetText, ControlCommand
Esempio
Run("notepad.exe")
WinWait("Untitled -")
ControlSetText("Untitled -", "", "Edit1", "New Text Here" )
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la finestra/controllo non viene trovata.
Osservazioni
Quando usi un nome di controllo nelle funzioni Control, è necessario aggiungere un numero alla fine
del nome per indicare quale controllo. Per esempio, se ci sono due controlli chiamati "MDIClient",
puoi referenziarli come "MDIClient1" e "MDIClient2".
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Osservazioni
Questa funzione tenta di leggere la prima status bar standard su una finestra (Microsoft common
control: msctls_statusbar32). Alcuni programmi usano le loro status bars o versioni speciali del MS
common control che StatusbarGetText non può leggere. Ad esempio, StatusbarText non funziona
con il programma TextPad; comunque, la prima regione della status bar di TextPad può essere letta
usando ControlGetText("TextPad", "", "HSStatusBar1")
StatusbarGetText può funzionare su finestre che sono minimizzate o nascoste.
Funzioni correlate
ControlGetText, ControlCommand
Esempio
AutoItSetOption("WinTitleMatchMode", 2)
$x = StatusbarGetText("Internet Explorer")
MsgBox(0, "La status bar di Internet Explorer dice:", $x)
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Puoi usare la funzione WinActive per verificare se WinActivate ha avuto successo. Se più finestre
corrispondono ai criteri, la finestra che è stata attiva più di recente è quella che viene attivata.
WinActivate funziona anche su finestre minimizzate. Comunque, una finestra che è "sempre in
primo piano" potrebbe sovrapporsi alla finestra che è stata attivata.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se la finestra non è attiva.
Osservazioni
Nessuna.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Nessuna.
Osservazioni
Questa funzione invia un messaggio di chiusura ad una finestra, il risultato dipende dalla finestra
(può chiedere di salvare i dati data, etc.). Per forzare la chiusura di una finestra, usa la funzione
WinKill. Se più finestre corrispondono ai criteri, la finestra che è stata attiva più di recente viene
chiusa.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
Esempio
WinGetCaretPos ( )
Parametri
Nessuno.
Valore di ritorno
Osservazioni
WinGetCaretPos potrebbe ritornare valori non accurati per applicazioni Multiple Document Interface
(MDI) se è usato "absolute CaretCoordMode". Vedi l'esempio per una soluzione. Nota: Alcune
applicazioni riportano coordinate statiche indipendentemente dalla posizione del caret!
Funzioni correlate
CaretCoordMode (Option)
Esempio
$a = WinGetCaretPos()
If Not @error Then ToolTip("First Method Pos", $a[0], $a[1])
sleep(2000)
$b = _CaretPos()
If Not @error Then ToolTip("Second Method Pos", $b[0], $b[1])
sleep(2000)
; Un metodo più affidabile per ottenere le coordinate del caret text editors MDI.
Func _CaretPos()
Local $x_adjust = 5
Local $y_adjust = 40
Local $t[2]
If IsArray($c) e IsArray($w) e IsArray($e) Then
$t[0] = $c[0] + $w[0] + $e[0] + $x_adjust
$t[1] = $c[1] + $w[1] + $e[1] + $y_adjust
Return $t ;coordinate assolute dello schermo per il cursore
Else
SetError(1)
EndIf
EndFunc
Parametri
Valore di ritorno
Osservazioni
I nomi di classi sono separati da linefeed (@LF). WinGetClassList funziona sia su finestre nascoste
che minimizzate. Possono essere recuperati fino a 64KB di testo. Se più finestre corrispondono ai
criteri, le classi sono lette a partire dalla finestra attiva più di recente.
Funzioni correlate
WinGetText, ControlCommand
Esempio
Parametri
Valore di ritorno
Osservazioni
Funzioni correlate
WinGetPos, WinMove
Esempio
$size = WinGetClientSize("")
MsgBox(0, "La dimensione dell'area client della finestra attiva è (larghezza,altezza):", $size[0] & " "
& $size[1])
Parametri
Valore di ritorno
Successo: Ritorna una stringa contenente il valore del puntatore della finestra.
Ritorna "" (stringa vuota) e imposta @error a 1 se nessuna finestra corrisponde ai
Insuccesso:
criteri.
Osservazioni
Questa funzione può essere usata con le opzioni avanzate WinTitleMatchMode che permettono di
usare classnames e puntatori per specificare finestre piuttosto che "titoli" e "testi".
Una volta ottenuto il puntatore puoi accedere alla finestra richiesta anche se il suo titolo cambia.
Funzioni correlate
WinTitleMatchMode (Option)
Esempio
; Identifica la finestra Notepad che contiene il testo "this one" e ottiene un puntatore ad essa
Parametri
Valore di ritorno
Osservazioni
WinGetPos ritorna numeri negativi come -32000 per finestre minimizzate, ma funziona bene con
finestre nascoste (non minimizzate).
Se viene usato il titolo della finestra "Program Manager", la funzione ritornerà la dimensione del
desktop. Se più finestre corrispondono ai criteri, la finestra attiva più di recente viene usata.
Funzioni correlate
WinGetClientSize, WinMove
Esempio
$size = WinGetPos("")
MsgBox(0, "Statistiche sulla finestra attiva (x,y,larghezza,altezza):", $size[0] & " " & $size[1] & " "
& $size[2] & " " & $size[3])
Parametri
Valore di ritorno
Ritorna un valore che indica lo stato della finestra. Valori multipli sono addizionati
Successo:
insieme, perciò usa BitAND() per esaminare la parte a cui sei interessato:
1 = La finestra esiste
2 = La finestra è visibile
4 = La finestra è abilitata
8 = La finestra è attiva
16 = La finestra è minimizzata
32 = La finestra è massimizzata
Insuccesso: Ritorna 0 e imposta @error a 1 se la finestra non è stata trovata.
Osservazioni
Nessuna.
Funzioni correlate
BitAND, WinGetPos
Esempio
Parametri
Valore di ritorno
Osservazioni
Possono essere recuperati fino a 64KB di testo di una finestra. WinGetText funziona su finestre
minimizzate, ma funziona su finestre nascoste solo se hai impostato AutoItSetOption
("WinDetectHiddenText", 1)
Se più finestre corrispondono ai criteri, vengono recuperate le informazioni relative a quella attiva
più di recente.
Usa WinGetText("") per ottenere il testo della finestra attiva.
Funzioni correlate
WinGetTitle, ControlGetText
Esempio
Parametri
Valore di ritorno
Ritorna una stringa contenente il titolo completo di una finestra. Ritorna 0 se nessun titolo
corrisponde.
Osservazioni
WinGetTitle("") ritorna il titolo della finestra attiva. WinGetTitle funziona sia su finestre
minimizzate che nascoste. Se più finestre corrispondono ai criteri, la finestra attiva più di recente
viene usata.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Osservazioni
La differenza tra questa funzione e WinClose è che WinKill terminerà decisamente la finestra se non
si chiude abbastanza rapidamente. Di conseguenza, un utente potrebbe non avere tempo per
rispondere alla finestre di dialogo che chiedono di salvare i dati. Sebbene WinKill può funzionare sia
su finestre minimizzate che nascoste, alcune finestre (particolarmente Windows Explorer) possono
essere terminate solo usando WinClose.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se il menu non può essere trovato.
Osservazioni
Nota che voci di menu sottolineate attualmente contengono un carattere & per indicare la
sottolineatura. In questo modo, la voce di menu File richiederebbe il testo "&File", e Convert
richiederebbe "Con&vert". Puoi accedere a voci di menu fino ad una profondità di 6 livelli; e la
finestra può essere inattiva, minimizzata, e/o anche nascosta.
WinMenuSelectItem funzionerà solo con menu standard. Sfortunatamente, moli menu in uso al
giorno d'oggi sono scritti in maniera "personalizzata" o le toolbars "pretendono" di essere menu. Ciò
è vero per molte applicazioni Microsoft.
Funzioni correlate
ControlCommand, Send
Esempio
WinMinimizeAll ( )
Parametri
Nessuno.
Valore di ritorno
Nessuno.
Osservazioni
Funzioni correlate
WinMinimizeAllUndo, WinSetState
Esempio
WinMinimizeAll()
WinMinimizeAllUndo ( )
Parametri
Nessuno.
Valore di ritorno
Nessuno.
Osservazioni
Funzioni correlate
WinMinimizeAll, WinSetState
Esempio
WinMinimizeAllUndo()
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Programmi di terza parti che aggiungono voci di menu contestuale "Always On Top" potrebbero non
aggiornare le loro voci di menu per riflettere il cambiamento dello stato TOPMOST indotto da
AutoIt.
Funzioni correlate
WinSetState
Esempio
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Se più finestre corrispondono ai criteri, la finestra attiva più di recente viene usata.
@SW_MINIMIZE e @SW_MAXIMIZE funzionano anche su finestre di dialogo modali.
Funzioni correlate
WinActivate, WinClose
Esempio
Parametri
Valore di ritorno
Nessuno.
Osservazioni
Se più finestre corrispondono ai criteri, la finestra attiva più di recente viene usata.
Funzioni correlate
Esempio
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se si verifica un timeout.
Osservazioni
Funzioni correlate
Esempio
Run("notepad")
WinWait("Untitled")
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se si verifica un timeout.
Osservazioni
Funzioni correlate
Esempio
Mette in pausa l'esecuzione dello script finchè la finestra richiesta non esiste.
Parametri
Valore di ritorno
Successo: Ritorna 1.
Insuccesso: Ritorna 0 se si verifica un timeout.
Osservazioni
Se la finestra non esiste quando questa funzione viene chiamata ritornerà immediatamente 0. La
finestra è controllata ogni 250 millisecondi circa.
Funzioni correlate
Esempio
Mette in pausa l'esecuzione dello script finchè la finestra richiesta non è attiva.
Parametri
Valore di ritorno
Osservazioni
Lo script controlla che una finestra corrisponda ogni 250 millisecondi circa.
Funzioni correlate
Esempio
Di seguito c'è una lista completa delle libreria di funzioni standard disponibili in AutoIt. Clicca su
un nome funzione per una descrizione dettagliata.
Funzione Descrizione
#include <Color.au3>
_ColorGetRed Ottiene il componente rosso di un dato colore.
#include <Date.au3>
_DateDayOfWeek Ritorna il nome del weekday, basato sul giorno specificato.
Ritorna il numero di giorni in un mese, basato sul mese e anno
_DateDaysInMonth
specificato.
Ritorna 1 se l'anno specificato è un anno bisestile e ritorna 0 se non lo
_DateIsLeapYear
è.
Ritorna 1 se il numero di mese specificato è valido e ritorna 0 se non
_DateIsValidMonthNum
lo è.
_DateIsValidWeekdayNum Ritorna 1 se il numero di weekday è valido e ritorna 0 se non lo è.
_DateIsValidYear Ritorna 1 se l'anno specificato è valido e ritorna 0 se non lo è.
_DateLastMonthNum Ritorna il numero di mese precedente, basato sul mese specificato.
Ritorna l'anno del mese precedente, basato sul mese e anno
_DateLastMonthYear
specificato.
Ritorna il numero di weekday precedente, basato sul giorno della
_DateLastWeekdayNum
settimana specificato.
_DateMonthOfYear Ritorna il nome del mese, basato sul mese specificato.
_DateNextMonthNum Ritorna il numero del mese successivo, basato sul mese specificato.
Ritorna l'anno del mese successivo, basato sul mese e anno
_DateNextMonthYear
specificato.
Ritorna il numero di weekday successivo, basato sul giorno della
_DateNextWeekdayNum
settimana specificato.
_TicksToTime Converte il tick specificato in ore, minuti, e secondi.
_TimeIsValidHour Ritorna 1 se l'ora specificata è valida e ritorna 0 se non lo è.
_TimeIsValidMinute Ritorna 1 se il minuto specificato è valido e ritorna 0 se non lo è.
_TimeIsValidSecond Ritorna 1 se il secondo specificato è valido e ritorna 0 se non lo è.
_TimeToTicks Converte le ore, minuti, e secondi specificati in ticks.
#include <File.au3>
_DirRemoveContents Cancella i contenuti di una directory/cartella.
_FileAppend Accoda il testo specificato ad un file.
_FileCountLines Ritorna il numero di linee del file specificato.
_FileCreate Crea il file specificato con una lunghezza di zero bytes.
_FileReadToArray Legge il file specificato in un array.
_FileWriteLog Scrive il testo specificato in un log file.
#include <Math.au3>
#include <Process.au3>
_RunDOS Esegue un comando DOS in una finestra di comandi nascosta.
#include <String.au3>
_StringRepeat Ripete una stringa uno specificato numero di volte.
_StringReverse Inverte i contenuti di una stringa specificata.
Appendix Reference
Caratteri Ascii
Splash... Fonts
OsLang Values
Caratteri ASCII
Questa lista è utile con le funzioni Asc e Chr. I caratteri ASCII sono tratti da ASCII Character Set
Caratteri di Controllo (prevalentemente non stampabili; i più utili sono evedenziati in giallo.)
$ 36 24 Carattere Dollaro
% 37 25 Carattere Percento
& 38 26 Ampersand
` 39 27 Apice singolo di chiusura (apostrofo)
( 40 28 Parentesi aperte
) 41 29 Parentesi chiuse
* 42 2a Asterisco (stella, moltiplicazione)
+ 43 2b Più
, 44 2c Virgola
- 45 2d Divisione, trattino, meno
. 46 2e Periodo
/ 47 2f Barra inclinata (forward slash, divisione)
0 48 30 Zero
1 49 31 Uno
2 50 32 Due
3 51 33 Tre
4 52 34 Quttro
5 53 35 Cinque
6 54 36 Sei
7 55 37 Sette
8 56 38 Otto
9 57 39 Nove
: 58 3a Due punti
; 59 3b Puno e virgola
< 60 3c Segno minore
= 61 3d Segno uguale
> 62 3e Segno maggiore
? 63 3f Punto interrogativo
@ 64 40 Segno At
A 65 41 A maiuscola
B 66 42 B maiuscola
C 67 43 C maiuscola
D 68 44 D maiuscola
E 69 45 E maiuscola
F 70 46 F maiuscola
G 71 47 G maiuscola
H 72 48 H maiuscola
I 73 49 I maiuscola
J 74 4a J maiuscola
K 75 4b K maiuscola
L 76 4c L maiuscola
M 77 4d M maiuscola
N 78 4e N maiuscola
O 79 4f O maiuscola
P 80 50 P maiuscola
Q 81 51 Q maiuscola
R 82 52 R maiuscola
S 83 53 S maiuscola
T 84 54 T maiuscola
U 85 55 U maiuscola
V 86 56 V maiuscola
W 87 57 W maiuscola
X 88 58 X maiuscola
Y 89 59 Y maiuscola
Z 90 5a Z maiuscola
[ 91 5b Parentesi quadra aperta
\ 92 5c Barra inclinata al contrario (Backslash)
] 93 5d Parentesi quadra chiusa
^ 94 5e Caret (accento circonflesso)
_ 95 5f Carattere di sottolineatura
` 96 60 Apice singolo aperto
a 97 61 a minuscola
b 98 62 b minuscola
c 99 63 c minuscola
d 100 64 d minuscola
e 101 65 e minuscola
f 102 66 f minuscola
g 103 67 g minuscola
h 104 68 h minuscola
i 105 69 i minuscola
j 106 6a j minuscola
k 107 6b k minuscola
l 108 6c l minuscola
m 109 6d m minuscola
n 110 6e n minuscola
o 111 6f o minuscola
p 112 70 p minuscola
q 113 71 q minuscola
r 114 72 r minuscola
s 115 73 s minuscola
t 116 74 t minuscola
u 117 75 u minuscola
v 118 76 v minuscola
w 119 77 w minuscola
x 120 78 x minuscola
y 121 79 y minuscola
z 122 7a z minuscola
{ 123 7b Parentesi graffa aperta
| 124 7c Linea verticale
} 125 7d Parentesi graffa chiusa
~ 126 7e Tilde (segno di approssimazione)
127 7f Delete (rubout), cross-hatch box
Ž 142 8E
143 8F Nota: Non visualizzato in questo file html compilato in help file
144 90 Nota: Non visualizzato in questo file html compilato in help file
‘ 145 91
’ 146 92
“ 147 93
” 148 94
• 149 95
– 150 96
— 151 97
˜ 152 98
™ 153 99
š 154 9A
› 155 9B
œ 156 9C
157 9D Nota: Non visualizzato in questo file html compilato in help file
ž 158 9E
Ÿ 159 9F
160 A0
¡ 161 A1
¢ 162 A2
£ 163 A3
¤ 164 A4
¥ 165 A5
¦ 166 A6
§ 167 A7
¨ 168 A8
© 169 A9
ª 170 AA
« 171 AB
¬ 172 AC
Nota: Può non essere visualizzato in questo file html compilato in
173 AD
help file
® 174 AE
¯ 175 AF
° 176 B0
± 177 B1
² 178 B2
³ 179 B3
´ 180 B4
µ 181 B5
¶ 182 B6
· 183 B7
¸ 184 B8
¹ 185 B9
º 186 BA
» 187 BB
¼ 188 BC
½ 189 BD
¾ 190 BE
¿ 191 BF
À 192 C0
Á 193 C1
 194 C2
à 195 C3
Ä 196 C4
Å 197 C5
Æ 198 C6
Ç 199 C7
È 200 C8
É 201 C9
Ê 202 CA
Ë 203 CB
Ì 204 CC
Í 205 CD
Î 206 CE
Ï 207 CF
Ð 208 D0
Ñ 209 D1
Ò 210 D2
Ó 211 D3
Ô 212 D4
Õ 213 D5
Ö 214 D6
× 215 D7
Ø 216 D8
Ù 217 D9
Ú 218 DA
Û 219 DB
Ü 220 DC
Ý 221 DD
Þ 222 DE
ß 223 DF
à 224 E0
á 225 E1
â 226 E2
ã 227 E3
ä 228 E4
å 229 E5
æ 230 E6
ç 231 E7
è 232 E8
é 233 E9
ê 234 EA
ë 235 EB
ì 236 EC
í 237 ED
î 238 EE
ï 239 EF
ð 240 F0
ñ 241 F1
ò 242 F2
ó 243 F3
ô 244 F4
õ 245 F5
ö 246 F6
÷ 247 F7
ø 248 F8
ù 249 F9
ú 250 FA
û 251 FB
ü 252 FC
ý 253 FD
þ 254 FE
ÿ 255 FF
Lista CLSID
Per uso con FileOpenDialog, FileSaveDialog, o FileSelectFolder
Nota: Non tutti i valori possono funzionare come parametri per le funzioni AutoIt elencate sopra.
Lista basata su Standard Windows fonts Comunque, questa lista può contenere bugs!
Lucida Console x x x x x
Lucida Handwriting Italic x
Lucida Sans Italic x
Lucida Sans Unicode x x x
Marlett x x
Matisse ITC x
Modern x x x x
Modern MS Sans Serif x
MS Sans Serif x x x x x x
MS Serif x x x x x
Mv Boli x
News Gothic MT x
News Gothic MT Bold x
News Gothic MT Italic x
OCR A Extended x
Palatino Linotype x x
Palatino Linotype Bold x x
Palatino Linotype Bold Italic x x
Palatino Linotype Italic x x
Roman x x x
Script x x x
Small Fonts x x x
Smallfonts x x x
Symbol x x x x x x
Tahoma x x x x
Tahoma Bold x x x x
Tempus Sans ITC x x
Times New Roman x x x x x x
Times New Roman Bold x x x x x x
Times New Roman Bold Italic x x x x x x
Times New Roman Italic x x x x x x
Trebuchet x
Trebuchet Bold x
Trebuchet Bold Italic x
Trebuchet Italic x
Trebuchet MS x x
Trebuchet MS Bold x x
@OSLang codes
Possibili valori di ritorno (stringhe) di @OSLang
La lista è stata generata da Windows 2000 - Lista di Locale IDs e Language Groups
Codice Significato
0436 Afrikaans
041c Albanian
0401 Arabic_Saudi_Arabia
0801 Arabic_Iraq
0c01 Arabic_Egypt
1001 Arabic_Libya
1401 Arabic_Algeria
1801 Arabic_Morocco
1c01 Arabic_Tunisia
2001 Arabic_Oman
2401 Arabic_Yemen
2801 Arabic_Syria
2c01 Arabic_Jordan
3001 Arabic_Lebanon
3401 Arabic_Kuwait
3801 Arabic_UAE
3c01 Arabic_Bahrain
4001 Arabic_Qatar
042b Armenian
042c Azeri_Latin
082c Azeri_Cyrillic
042d Basque
0423 Belarusian
0402 Bulgarian
0403 Catalan
0404 Chinese_Taiwan
0804 Chinese_PRC
0c04 Chinese_Hong_Kong
1004 Chinese_Singapore
1404 Chinese_Macau
041a Croatian
0405 Czech
0406 Danish
0413 Dutch_Standard
0813 Dutch_Belgian
0409 English_United_States
0809 English_United_Kingdom
0c09 English_Australian
1009 English_Canadian
1409 English_New_Zealand
1809 English_Irish
1c09 English_South_Africa
2009 English_Jamaica
2409 English_Caribbean
2809 English_Belize
2c09 English_Trinidad
3009 English_Zimbabwe
3409 English_Philippines
0425 Estonian
0438 Faeroese
0429 Farsi
040b Finnish
040c French_Standard
080c French_Belgian
0c0c French_Canadian
100c French_Swiss
140c French_Luxembourg
180c French_Monaco
0437 Georgian
0407 German_Standard
0807 German_Swiss
0c07 German_Austrian
1007 German_Luxembourg
1407 German_Liechtenstei
408 Greek
040d Hebrew
0439 Hindi
040e Hungarian
040f Icelandic
0421 Indonesian
0410 Italian_Standard
0810 Italian_Swiss
0411 Japanese
043f Kazakh
0457 Konkani
0412 Korean
0426 Latvian
0427 Lithuanian
042f Macedonian
043e Malay_Malaysia
083e Malay_Brunei_Darussalam
044e Marathi
0414 Norwegian_Bokmal
0814 Norwegian_Nynorsk
0415 Polish
0416 Portuguese_Brazilian
0816 Portuguese_Standard
0418 Romanian
0419 Russian
044f Sanskrit
081a Serbian_Latin
0c1a Serbian_Cyrillic
041b Slovak
0424 Slovenian
040a Spanish_Traditional_Sort
080a Spanish_Mexican
0c0a Spanish_Modern_Sort
100a Spanish_Guatemala
140a Spanish_Costa_Rica
180a Spanish_Panama
1c0a Spanish_Dominican_Republic
200a Spanish_Venezuela
240a Spanish_Colombia
280a Spanish_Peru
2c0a Spanish_Argentina
300a Spanish_Ecuador
340a Spanish_Chile
380a Spanish_Uruguay
3c0a Spanish_Paraguay
400a Spanish_Bolivia
440a Spanish_El_Salvador
480a Spanish_Honduras
4c0a Spanish_Nicaragua
500a Spanish_Puerto_Rico
0441 Swahili
041d Swedish
081d Swedish_Finland
0449 Tamil
0444 Tatar
041e Thai
041f Turkish
0422 Ukrainian
0420 Urdu
0443 Uzbek_Latin
0843 Uzbek_Cyrillic
042a Vietnamese
Esempio
Func _Language()
Select
Case StringInStr("0413,0813", @OSLang)
Ritorna "Dutch"
Case StringInStr("0409,0809,0c09,1009,1409,1809,1c09,2009,_
2409,2809,2c09,3009,3409", @OSLang)
Ritorna "English"
Case StringInStr("040a,080a,0c0a,100a,140a,180a,1c0a,200a,_
240a,280a,2c0a,300a,340a,380a,3c0a,400a,_
440a,480a,4c0a,500a", @OSLang)
Ritorna "Spanish"
Case Else
Ritorna "Altro (può essere determinato direttamente con @OSLang"
EndSelect
EndFunc
Per inviare il valore ASCII A (lo stesso premendo ALT+065 sulla tastiera numerica)
Send("{ASC 65}")
Molte tastiere di computer portatili hanno una chiave speciale Fn. Questa chiave non può essere
simulata.
Nota, impostando il parametro flag a 1 il parametro "keys" è inviato RAW. Ciò è utile quando vuoi
inviare del testo copiato da una variabile e vuoi che il testo sia inviato esattamente come è scritto.
Send è molto utile perchè le finestre possono essere navigate senza bisogno del mouse.
Per esempio, apri opzioni Cartelle (nel Pannello di Controllo) e prova il seguente:
Usa combinazioni Alt-key per accedere a voci di menu. Inoltre, apri Blocco Note e prova il
seguente:
Send Alt+f, la chiave di accesso per il menu File di Notepad. Prova altre
Send("!f")
lettere!
Send
Muove giù un menu.
("{DOWN}")
Send("{UP}") Muove sù un menu.
Send("{LEFT}") Muove a sinistra un nuovo menu o espande un submenu.
Send("{RIGHT}") Move a destra un nuovo menu o contrae un submenu.
Vedi l'Help di Windows--premi Win+F1--per una lista completa di shortcuts di tastiera se non
conosci l'importanza di Alt+F4, PrintScreen, Ctrl+C, e così via.
{NUMLOCK} NUMLOCK
{CTRLBREAK} Ctrl+Break
{PAUSE} PAUSE
{CAPSLOCK} CAPSLOCK
{NUMPAD0} -
Numpad digits
{NUMPAD9}
{NUMPADMULT} Numpad Multiply
{NUMPADADD} Numpad Add
{NUMPADSUB} Numpad Subtract
{NUMPADDIV} Numpad Divide
{NUMPADDOT} Numpad period
{NUMPADENTER} Enter key on the numpad
{APPSKEY} Windows App key
{LALT} Left ALT key
{RALT} Right ALT key
{LCTRL} Left CTRL key
{RCTRL} Right CTRL key
{LSHIFT} Left Shift key
{RSHIFT} Right Shift key
{SLEEP} Computer SLEEP key
Mantiene la chiave ALT premuta finchè è inviato
{ALTDOWN}
{ALTUP}
Mantiene la chiave SHIFT premuta finchè è
{SHIFTDOWN}
inviato {SHIFTUP}
Mantiene la chiave CTRL premuta finchè è inviato
{CTRLDOWN}
{CTRLUP}
Mantiene la chiave left Windows premuta finchè è
{LWINDOWN}
inviato {LWINUP}
Mantiene la chiave right Windows premuta finchè
{RWINDOWN}
è inviato {RWINUP}
{ASC nnnn} Invia la combinazione ALT+nnnn
Ringraziamenti
In nessun ordine in particolare, ma grazie a tutti! (-Jon)
Per favore vedi qui per i dettagli sui contributi al codice. (Inviatemi un'email se non siete stati
inclusi).
AutoIt v3 Coding
- Jonathan Bennett <jon@hiddensoft.com>
- Tylo <tylo@start.no>
- Cyberslug <cyberslug@autoitscript.com>
- JdeB <jvdzande@yahoo.com>
- Holger <Holger.Kotsch@GMX.de>
- ScriptyKitty <scriptkitty@4dd.net>
Speciali ringraziamenti
- Chiunque continui ad usare e supportare AutoIt
- Jeremy Landes per aver fornito capacità extra per il download in http://www.landeserve.com
- Gli autori di UPX che è usato per creare gli eseguibili compressi prodotti da AutoIt.
History
Qui è riportata la cronologia pubblica di AutoIt v3. Per il log tecnico completo che include versioni
beta clicca qui.
Cambiamento principale: I colori ora per default sono conformi al formato standard RGB piuttosto
che al precedente formato BGR. Ciò riguarda PixelSearch() e PixelGetColor().
L'opzione "ColorMode" è stata aggiunta per consentire a vecchi scripts di essere eseguiti con la
modalità BGR, semplicemente
poni questa linea all'inizio del tuo script per usare il vecchio metodo, ad es.:
Opt("ColorMode", 1)
Se usi funzioni colore nel tuo codice DEVI considerare i cambiamenti riportati e o cambiare i
colori nel tuo cidice O aggiungere l'opzione Opt ColorMode come mostrato in precedenzae.
Ciò riguarda in particolare BOTs e il codice che interagisce con i giochi.
Aggiunto: MemGetStats()
Corretto: compatibilità Windows 95a
Corretto: Errori di digitazione nell'help file
Release iniziale
STACK:
/Title
()
/Subject
(D:20080518142830+02’00’)
/ModDate
()
/Keywords
(PDFCreator Version 0.9.5)
/Creator
(D:20080518142830+02’00’)
/CreationDate
(Francesco)
/Author
-mark-