PDA

Visualizza versione completa : AutoIT: nuova versione, vecchi guai...


retalv
13-02-2012, 15.35.00
http://www.autoitscript.com/site/autoit/downloads/

E' uscita la nuova versione di AutoIt, ma sinceramente vi consiglio di provarla senza cancellare la vecchia installazione o usando la versione senza installatore, ci sono troppi NUOVI bug sulle cose teoricamente maggiormente usate quale il parser dei parametri di linea comando e scelte discutibili sull'editor interno (SciTE) e anche qui cose che non vanno...

Molto interessante è invece la nuova versione di AutoIt Script Editor (Customised version of SciTE with lots of additional coding tools for AutoIt) che mette (fortunamente) una pezza ai vari problemi aggiungendo valangate di funzioni normalmente non disponibili nell'editor.

E' già in lavorazione la nuova beta (3.3.9.0)... sperem! :inkaz:

LoryOne
13-02-2012, 20.23.33
Grazie per la segnalazione.
Non ho capito questo: "il parser dei parametri di linea comando"
Significa che il primo elemento dell'array (array[0]) non equivale al nome dell'eseguibile e via di seguito gli ulteriori parametri ?

retalv
14-02-2012, 01.19.49
Non ho capito questo: "il parser dei parametri di linea comando"
Significa che il primo elemento dell'array (array[0]) non equivale al nome dell'eseguibile e via di seguito gli ulteriori parametri ?

Quasi, in AutoIt il nome del file non lo ritrovi nel primo record dell'array, ma in una macro apposita (@ScriptName)... in pratica: se esegui uno script non vengono riconosciuti i parametri che passi allo script stesso via linea comando, viene ritornato il numero di parametri alla locazione [0] dell'array, che in autoit ha voce $CmdLine[0], ma non vengono creati i record relativi ai parametri facendo ritornare un bell'errore di dimensionamento... :crying:

Alias:
$CmdLine[0] is number of parameters
$CmdLine[1] is param 1 (after the script name)
$CmdLine[2] is param 2 etc
...
$CmdLine[$CmdLine[0]] is one way to get the last parameter...

So if your script is run like this:

AutoIt3.exe myscript.au3 param1 "this is another param"

$CmdLine[0] equals... 2
$CmdLine[1] equals... param1
$CmdLine[2] equals... this is another param

@ScriptName equals... myscript.au3

Oltre a questo, è sempre stato possibile definire fino a 4 paramteri tramite appropriate locazioni dell'editor, funzione utilissima in sviluppo: ora pur definendoli non li interpreta. :eek:

Altro baco riguarda il valore ritornato in %ERRORLEVEL% (per intenderci negli script .bat o .cmd) ... ritorna sempre e comunque un 9062 (se ricordo bene) invece di 0, 1 ... o il valore specificato dalla funzione Exit... questo è bastato a farmi ritornare al rilascio precedente.

LoryOne
14-02-2012, 15.56.14
Ok.