LUA - UDF para AUTOIT - (alternativa al interface de C)
Publicado: 30 Dic 2011, 15:51
Podía colocar estos temas en LIBRERÍAS en documentación, o bien en Scripts - Programas, pero he preferido todo lo de LUA tenerlo en CHAT con LUA en la cabecera para tenerlo mejor agrupado. Espero que haya aceptación y publiqueis vuestros Scripts en lua, o bien en Autoit+LUA.
Función llamada desde autoit:
y en español:
http://translate.google.com/translate?s ... a2a95a63c7
Bajar de aquí: http://www.autoit.de/index.php?page=Att ... ntID=13162
Ejemplo de LIBRERIA de Lua para Autoit:#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_UseX64=n
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include "LUA.au3"
$lua = _LUA_Open() ; LUA abrir
_LUA_OpenDefaultLibs($lua) ; módulos estándar (si no no va)
_LUA_Push($lua, "number", 666) ; 666 el valor en la pila push (en lugar del número también es un número entero o una cadena, el resultado es el mismo)
_LUA_SetGlobal ( $ lua "Variable_1") ; Asignar el valor en la pila (666)
Variablennamen zuweisen
_LUA_RunFile($lua, "1.lua") ; la ejecución del script 1.lua
_LUA_GetGlobal($lua, "PrintMessage") ; Enviar variable (en este caso función)
_LUA_Push($lua, "string", "Sent by AutoIt") ; enviar parámetros en la pila
_Lua_Call($lua, 1, 0) ; Ejecutar la función con un parámetro y los valores de retorno de 0
;Atento a la salida de consola
_LUA_GetGlobal($lua, "name") ; Enviar a la pila Variable Global (definida en el script)
MsgBox(0, "", _Lua_ToString($lua, 1)) ;Pila con un índice de 1 (la variable) de salida como una cadena en AutoIt y mostrar en un cuadro de mensaje
_LUA_Pop($lua, 1) ; borrar el nombre de la variable (sin uso) de la pila
_LUA_GetGlobal($lua, "Variable_1") ; Empujar Variable_1 variables globales a la pila (se define en AutoIt y los cambios en el script)
MsgBox(0, "", _Lua_ToNumber($lua, 1)); Pila con indice 1 (la Variable) como Float y mostrar en un cuadro de mensaje
_LUA_Close($lua) ;
Función llamada desde autoit:
Fuente: http://www.autoit.de/index.php?page=Thr ... adID=26878function PrintMessage(text) --se llama esto desde Autoit
print("This is a message: "..text) --
end
name = "LUA-script" -- definir nueva variable para devolverla al script de Autoit como un return name
Variable_1 = Variable_1*2 -- Cambiar la variable para devolverla como return Variable_1
y en español:
http://translate.google.com/translate?s ... a2a95a63c7
Bajar de aquí: http://www.autoit.de/index.php?page=Att ... ntID=13162