Autor Tema: Programando en AutoIT  (Leído 51106 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5470
    • Electrónica Didacta
Programando en AutoIT
« en: 03 de Marzo de 2008, 14:40:02 »
Aquí va un minicurso de iniciación para que conozcan el entorno de programación AutoIT

AutoIT es un lenguaje BASIC tipo script creado por Jonathan Bennett y colaboradores, y diseñado para automatizar las ventanas GUI en conjunción con simulación de combinaciones de teclas, movimientos de cursor todo ello con el objetivo de automatizar procesos.

AutoIt puede:

 Ejecutar programas Windows and DOS.
 simular combinaciones del teclado
 simular movimientos y clicks del ratón
 mover, ajustar y manipular ventanas
 interactuar directamente con ventanas
 trabajar con el portapapeles
 trabajar con el registro
 hacer llamadas a DLL´s
 
hasta la fecha AutoIT en su versión 3.2.10.0 es de libre uso

se descarga en http://www.autoitscript.com/autoit3/downloads.shtml

hay otras herramientas que se deben descargar para trabajar holgadamente con todo lo disponible.

http://www.autoitscript.com/autoit3/scite/downloads.shtml

primero instalar autoit-v3-setup.exe y luego SciTE4AutoIt3.exe

- Creando la primera ventana con un mensaje "Hola Mundo"

vamos a escribir un programa que muestre una ventana con un mensaje que diga "Hola Mundo"


para ello, creamos un nuevo script (extensión .au3)



se creará un archivo llamado "Nuevo AutoIt v3 Script.au3" , al abrirlo veremos que AutoIT tiene su propio editor llamado SciTE y con la plantilla por defecto:

Código: Visual Basic
  1. #cs ----------------------------------------------------------------------------
  2.  
  3.  AutoIt Version: 3.2.10.0
  4.  Author:         myName
  5.  
  6.  Script Function:
  7.         Template AutoIt script.
  8.  
  9. #ce ----------------------------------------------------------------------------
  10.  
  11. ; Script Start - Add your code below here

nota: para facilitar el aprendizaje diré los pasos mas sencillos y después explicaré en detalle


si instalamos SciTE4AutoIt3.exe, en el menú tool aparecerá un conjunto de utilidades e instrucciones, vamos a clicar en Koda (Form Designer) ó alt+m





Koda es una especie de RAD y a mi parecer es fundamental tenerlo y usarlo porque éste nos generará el código correspondiente a los controles que queramos usar y ubicar en el formulario.

si han trabajado con IDE tipo RAD, esto será pan comido, porque la temática es la misma.

se buscan los controles, se pegan en el formulario y después de una pequeña configuración, se genera el código correspondiente. Bien sigamos con el ejemplito:

pegamos un botón:





y listo, lo dejamos así por los momentos. Ahora nos vamos al menú herramientas y clicamos:





allí aparecerá una ventana con el código generado por el koda,







clicamos en "Insertar en SciTE" y cuando vayamos a nuestra pantalla del SciTE, veremos que se ha insertado realmente el código.

el código es éste:

Código: Visual Basic
  1. #cs ----------------------------------------------------------------------------
  2.  
  3.  AutoIt Version: 3.2.10.0
  4.  Author:         myName
  5.  
  6.  Script Function:
  7.         Template AutoIt script.
  8.  
  9. #ce ----------------------------------------------------------------------------
  10.  
  11. #include <GUIConstants.au3>
  12.  
  13. Opt("GUIOnEventMode", 1)
  14. #Region ### START Koda GUI section ### Form=
  15. Local $Form1 = GUICreate("Form1", 335, 239, 234, 180)
  16. GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")
  17. GUISetOnEvent($GUI_EVENT_MINIMIZE, "Form1Minimize")
  18. GUISetOnEvent($GUI_EVENT_MAXIMIZE, "Form1Maximize")
  19. GUISetOnEvent($GUI_EVENT_RESTORE, "Form1Restore")
  20. Local $Button1 = GUICtrlCreateButton("Button1", 112, 96, 105, 41, 0)
  21. GUICtrlSetOnEvent(-1, "Button1Click")
  22. GUISetState(@SW_SHOW)
  23. #EndRegion ### END Koda GUI section ###
  24.  
  25. While 1
  26.     Sleep(100)
  27. WEnd
  28.  
  29. Func Button1Click()
  30.  
  31. EndFunc
  32. Func Form1Close()
  33.  
  34. EndFunc
  35. Func Form1Maximize()
  36.  
  37. EndFunc
  38. Func Form1Minimize()
  39.  
  40. EndFunc
  41. Func Form1Restore()
  42.  
  43. EndFunc
  44. ; Script Start - Add your code below here


ajá ahora viene la parte d explicar todo aquello. pero así como está se puede ejecutar correctamente (tecleando F5) si quieren hagan la prueba, solo mostrará la ventana con el botón





una cosa, si intentan cerrar el programa clicando en el botón arriba a la derecha (el que tiene una x dibujada), no cerrará.

no se asusten que el programa se detiene alt+tabulando al SciTE y tecleando ctrl+pause

la razón de porque no se puede cerrar es simple, en la función:


Func Form1Close()

EndFunc


no hay orden que ejecutar, bien, allí se escribe la función Exit







noten que el SciTE tiene la opción de autocompletado y las instrucciones las tenemos a la mano. La función quedará:

Código: Visual Basic
  1. Func Form1Close()
  2.     Exit
  3. EndFunc


asi garantizamos que podemos cerrar clicando en el evento cerrar (interactuando con la ventana)

- Explicando las lineas relevantes:

la primera línea de código visible es:

Opt("GUIOnEventMode", 1)

digamos que AutoIT tiene 2 modos de atender eventos, uno es por encuesta, preguntando en cada ciclo por si cada uno de los controles tiene un mensaje que dar; y el otro que es crear un bucle eterno y que al producirse un evento, el programa se vaya a esa zona donde se encuentra la función correspondiente a ese control.

en este minicurso me enfocaré a este último evento, ya que la programación es practicamente procedural y con funciones la vida es mejor :)



Local $Form1 = GUICreate("Form1", 335, 239, 234, 180)

GUICreate es la función que crea la ventana, se pide una serie de argumentos como, titulo de la ventana, ancho, alto y posición en el escritorio, también hay parametros adicionales para añadirle estilos de ventanas y otras configuraciones (se verá a futuro)

como toda función devuelve un valor que se almacenará el una variable local llamada Form1


nota: todas la variables se declaran anteponiendo "$" sea del tipo que sea.

si la función GUICreate devuelve cero, ocurrió un error (y con un tratamiento de control de errores se puede controlar ese proceso)

si fué exitosa, devuelve el handle de la ventana.



GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")


traducido, significa que le asignaremos un evento a cerrar el formulario, como veniamos hablando anteriormente, al clicar en el botón cerrar





se enviará el mensaje: $GUI_EVENT_CLOSE al formulario, y con GUISetOnEvent le estamos diciendo que atenderá la función Func Form1Close()

nota: $GUI_EVENT_CLOSE es una constante que se llama desde

#include <GUIConstants.au3>



Local $Button1 = GUICtrlCreateButton("Button1", 112, 96, 105, 41, 0)
GUICtrlSetOnEvent(-1, "Button1Click")


GUICtrlCreateButton es similar a GUICreate, y crea el botón con sus argumentos respectivos, además que se "activa" su correspondiente evento

nota: "-1" a veces indica que es el dato por defecto que se escribirá y en este caso indica que tomará el handle del botón, es igual que si escribieramos:

Local $Button1 = GUICtrlCreateButton("Button1", 112, 96, 105, 41, 0)
GUICtrlSetOnEvent($Button1, "Button1Click")




GUISetState(@SW_SHOW)

cambia el estado de la ventana: mi traducción: manda y/o refresca la nueva configuración de la ventana

While 1
    Sleep(100)
WEnd


el bucle eterno comentado anteriormente, allí se quedará hasta que se active un evento y después regresa al bucle en espera de otro evento.



inicialmente queriamos mostrar un mensaje, bueno eso se hace con la función MsgBox (si si similar al visual basic jeje), e iría :






Func Button1Click()
   MsgBox(0,"Mensaje a mostrar","Hola Mundo")
EndFunc





poniendo cero como flag estamos indicando que queremos el botón de OK

se me ha pasado por alto lo del Koda, existe la posibilidad de guardar el formulario que creamos (con extensión .kxf) y abrirlo posteriormente para modificarlo



bien, ya logramos escribir y compilar nuestro primer programa en AutoIT

Notas:

en la ayuda del AutoIT se encuentra TODA la información necesaria de todas las funciones, explicadas y con situaciones especiales, también hay scripts de ejemplos que nos ayudan a entender como funcionan.

« Última modificación: 03 de Marzo de 2008, 14:46:40 por PalitroqueZ »
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5470
    • Electrónica Didacta
Re: Programando en AutoIT
« Respuesta #1 en: 03 de Marzo de 2008, 14:40:55 »
Holas

en esta oportunidad voy a mencionar unas funciones peculiares que simplemente me asombraron por la potencia que tienen y sobre todo porque hacerlo con apis es bastante largo

ToolTip

la explicación del tooltip la consiguen aquí, hacerlo con apis de windows es tremendamente largo y algo dificil, porque hay que conocer en profundidad como se genera esa ventanita. En cambio en AutoIT es una pasada ya que tenemos una función que hace todo rapido y fácil. He aquí un ejemplo


Código: Visual Basic
  1. local const $valor_por_defecto=-1
  2. Local const $icono_informacion=1
  3. Local Const $mostrar_tipo_globo=1
  4.  
  5. ToolTip("Soy un ToolTip tipo globo",$valor_por_defecto,$valor_por_defecto, _
  6.         "Titulo:",$icono_informacion,$mostrar_tipo_globo)
  7. Sleep(2000)



¡fácil! ¿verdad? :-)

existe otro similar, llamado


TrayTip

muestra el globo en la barra de tareas

código ejemplo:

Código: Visual Basic
  1. TrayTip("titulo:","hola soy yo otra vez",-1)
  2. Sleep(2000) ; espera 2 mil milisegundos





hay varios que son curiosos como el abrir/cerrar a bandeja de la lectora de cd/dvd

CDTray

código ejemplo:

Código: Visual Basic
  1. CDTray ( "E:", "open" )
  2. Sleep(5000) ; espera 5 segundos
  3. CDTray ( "E:", "close" )


bien como dice un cuervo por allí en sus articulos, otro dia, un poco mas ;)

« Última modificación: 03 de Marzo de 2008, 14:44:27 por PalitroqueZ »
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: Programando en AutoIT
« Respuesta #2 en: 03 de Marzo de 2008, 17:02:08 »
Muy bueno Pedro!

Realmente es muy facil de usar, y para tareas de automatizaion o programas simples va de maravillas. :mrgreen:

Saludos.
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5470
    • Electrónica Didacta
Re: Programando en AutoIT
« Respuesta #3 en: 07 de Marzo de 2008, 16:07:44 »
Hoy voy a exponer una pequeña aplicación llamada instalador de Firefox ff.

introducción:

"instalador de Firefox" es una aplicación que nos resulta útil para aquellos que visitamos el ciber con frecuencia y donde las maquinas no tienen instalado el navegador del zorrito, entonces es molesto estar cada vez instalandolo (debido a los congeladores que le aplican al win). Bueno he aquí una automatización que en 14 pasos nos hace el trabajo mientras nos sentamos comodamente frente al monitor y los que están al lado se preguntan que estamos haciendo ;)


Descripción del programa:


los que hayan usado el firefox alguna vez, conocen los requisitos que va pidiendo el programa para configurarlo a nuestra elección, en este caso, la configuración es la siguiente:

- instalación estándar (opciones mas comunes).
- navegador predeterminado.
- NO mostrar la ventana de descarga cuando se descargue un archivo.
- preguntarme siempre donde guardar los archivos.
- limpiar la información privada al cerrar el firefox.
- NO preguntar antes de limpiar los datos privados.
- limpìar TODA la información concerniente a los datos privados.
- quitar todos los accesos directos del Quick Launch a excepción de "mostrar escritorio".
- crear un acceso directo del firefox en Quick Launch en modo seguro.

todo se ejecutará tal cuál como lo hariamos mediante teclado y ratón, pero el programa realizado en AutoIT lo hará por nosotros.

Para ello necesitamos saber atajos de teclado y el caption de las ventanas, introducirlas mediante programación y nuestro programilla sabrá que ventana corresponde cada acción.

lo primero que hay que hacer es arrancar el ejecutable Firefox Setup 2.0.0.12.exe

en el AutoIT existe una instrucción llamada Run

Código: Visual Basic
  1. Run("Firefox Setup 2.0.0.12.exe")

en unos instantes aparecerá esta ventana:





fijense que hay unos botonones que tenemos que pulsar para seguir avanzando, antes se continuar, ¿como sabe el programilla a que ventana hacer caso?

bien, existe otra instrucción llamada WinWaitActive("caption")

WinWaitActive detiene momentaneamente la ejecución del script hasta que aparezca la ventana con el texto "caption"

WinWaitActive también localiza captions de otros objetos dentro de la misma ventana , y sería el segundo arguento, si el texto posee un atajo de teclado (caracterizado por una línea debajo del carácter cuyo atajo sería Alt+Carácter), entonces el caption de argumento, es &(carácter)caption.

en nuestro caso quedará así, para activar el evento del botón "Siguiente":

Código: Visual Basic
  1. WinWaitActive("Instalación de Mozilla Firefox", "&Siguiente")


una vez escogido el botón, debemos activarlo (como si fuera por teclado), con la combinación Alt+s

se hace con la instrucción


Código: Visual Basic
  1. Send("!s")

el argumento !s le indica a Send que haga Alt+s por nosotros



la siguiente ventana del instalador Firefox:




es similar al código anterior, debemos localizar los objetos con los que podemos interactuar y activar los eventos respectivos:

Código: Visual Basic
  1. WinWaitActive("Instalación de Mozilla Firefox", "&Acepto los términos del acuerdo de licencia")
  2. Send("!a")
  3. Send("{Space}")
  4. Send("{ENTER}")

el evento Send("{Space}") significa que debemos activar el optionBox, y con Send("{ENTER}") es equivalente a pulsar el botón "Siguiente" (es otra de manera de hacerlo ya que dicho botón se encuentra enfocado por defecto)




la siguiente ventana es:





la programación es similar a las anteriores

Código: Visual Basic
  1. WinWaitActive("Instalación de Mozilla Firefox", "&Estándar")
  2.     Send("{ENTER}")


voy a colocar las ventanas sucesivas y las respectivas lineas de programa







Código: Visual Basic
  1. Send("{ENTER}")




Código: Visual Basic
  1. WinWaitActive("Asistente de importación")
  2.     Send("!p")
  3.     Send("!n")






Código: Visual Basic
  1. WinWaitActive("Navegador predeterminado")
  2.     Send("{ENTER}")






ajá miren esta parte ahora, allí ya está configurada de acuerdo a mi elección, noten que mi página de inicio es google. ¿como se hace eso?

antes se me olvidó decirles que después de la penultima ventana, se abre el navegador con la página principal de mozilla firefox, tenemos que llegar a la última ventana en menú herramientas->opciones.

para escribir un texto basta usar:


Código: Visual Basic
  1. Send("www.google.co.ve")


el código completo para hacer esta sección es:


Código: Visual Basic
  1. WinWaitActive("Mozilla | Bienvenido a Firefox - Mozilla Firefox")
  2. ;-----------------------------
  3.     Send("!t")
  4.     Send("{o}")
  5.     WinWaitActive("Opciones")
  6.     Send("!p")
  7.     Send("+{HOME}")   ; selecciona el texto del link anterior
  8.     Send("{DEL}")     ; borra el link anterior
  9.     Send("www.google.co.ve")  ; escribe el nuevo link
  10.     Send("!d")
  11.     Send("!a")
  12.     Send("{ENTER}")  ; sale de la ventana opciones


la sección anterior ocurrió en la pestaña principal de la ventana opciones, ahora debemos abrir "opciones" otra vez y seleccionar la pestaña "provacidad" para continuar configurando




ahí está todo configurado y "clicando" en el botón configuración:






todas estan seleccionadas

el código que hace esta parte:

Código: Visual Basic
  1. Send("!t")
  2.     Send("{o}")
  3.     WinWaitActive("Opciones")
  4.     Send("{RIGHT 4}")
  5.     Send("!v")
  6.     Send("!a")
  7.     Send("!f")
  8.     WinWaitActive("Limpiar información privada")
  9.     Send("!c")
  10.     Send("!o")
  11.     Send("{ENTER}")
  12.     Send("{TAB 3}")
  13.     Send("{ENTER}")

ya tenemos listo nuestro navegador, solo falta crear un acceso directo a la barra Quick Launch (se encuentra al lado del botón inicio).






Código: Visual Basic
  1. Send("!{F4}")
  2.     WinWaitActive("Confirmar al cerrar")
  3.     Send("{ENTER}")
  4.  
  5.     sleep(100)
  6.     FileDelete( @AppDataDir & "\Microsoft\Internet Explorer\Quick Launch\*.lnk")
  7.     ; borra todos los accesos directos con extensión .lnk en quick launch
  8.     sleep(100) ; espera 100 mS (opcional)
  9.     EnvUpdate()  ; refresca el escritorio
  10.     FileCreateShortcut(@ProgramFilesDir & "\Mozilla Firefox\firefox.exe",@AppDataDir & "\Microsoft\Internet Explorer\Quick Launch\Mozilla Firefox (Modo seguro)",@ProgramFilesDir & "\Mozilla Firefox\"," -safe-mode")
  11.     sleep(100)
  12.     ; crea un acceso directo en quick launch en modo seguro



finalmente abrir el navegador en modo seguro






Código: Visual Basic
  1. ShellExecute("firefox.exe", "-safe-mode",@ProgramFilesDir & "\Mozilla Firefox\")
  2.     WinWait("Modo seguro de Firefox")
  3.     Send("{TAB 5}")  ; equivale a tabular 5 veces
  4.     Send("{ENTER}")


Notas:

- en el adjunto está el programa completo, le añadí otras cosas como mostrar mediante ballon tooltips el avances de los pasos de instalación










- obviamente el ejecutable del programilla funcionará con la versión 2.0.0.12, porque así quedó establecido al llamar a "Firefox Setup 2.0.0.12.exe" así que cuando que cuando salga una versión nueva, basta ajustar esa línea y compilar nuevamente.

- este programa ha sido probado en WinXP SP2, y por falta de añadir lineas de control de errores puede quedarse atascado en alguno de los pasos, esto ocurre por procesos que puedan ocurrir en el win en el instante que se ejecute el script, así que lo recomendable es no tocar nada hasta que termine el script.

- este programa es de libre uso, puede modificarlo a gusto, siempre que se mantenga/n el/los nombre del/los   autor/es original/es

bajar adjunto

« Última modificación: 07 de Marzo de 2008, 16:12:39 por PalitroqueZ »
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: Programando en AutoIT
« Respuesta #4 en: 07 de Marzo de 2008, 16:16:43 »
Impecable explicacion!
Se ve que le has "cogido el truco" al AutoIT...buenisimo.  :mrgreen:
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5470
    • Electrónica Didacta
Re: Programando en AutoIT
« Respuesta #5 en: 07 de Marzo de 2008, 16:33:35 »
Inexplicablemente le he tomado cariño a este scripter, a lo mejor es por la simplicidad de hacer las cosas.
para cosas de electrónica queda perfecto. A ver hasta donde soy de capaz y es capaz el autoit de llegar  :mrgreen:




La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7907
Re: Programando en AutoIT
« Respuesta #6 en: 07 de Marzo de 2008, 16:57:38 »
Excelente explicacion Pedro!!
Una pregunta, este scripter puede autolanzarse cada xx tiempo y ejecutar toda una serie de actividades??
Me has interesado... :mrgreen:
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5470
    • Electrónica Didacta
Re: Programando en AutoIT
« Respuesta #7 en: 07 de Marzo de 2008, 17:09:35 »
por lo menos tienes que haberlo ejecutado una primera vez, si te he entendido, hay varias formas de hacerlo.

Puedes meterle un sleep(tiempo en ms) o con el conjunto de funciones:

WinWait
WinWaitActive
WinWaitClose
WinWaitNotActive
WinExists
Opt("WinWaitDelay", tiempo_mS)
ControlGetHandle

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7907
Re: Programando en AutoIT
« Respuesta #8 en: 07 de Marzo de 2008, 17:25:56 »
Podria ejecutarlo con el programador de tareas?? :mrgreen:
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado sanpic

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 430
Re: Programando en AutoIT
« Respuesta #9 en: 08 de Marzo de 2008, 02:08:56 »
 :shock: :shock: :shock: :shock:

Muy bueno el soft y la explicación.


Saludos a todos.
IF you_know = true THEN                                 
     share_it
ENDIF

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5470
    • Electrónica Didacta
Re: Programando en AutoIT
« Respuesta #10 en: 08 de Marzo de 2008, 15:40:07 »
Podria ejecutarlo con el programador de tareas?? :mrgreen:

si claro, puedes hacer que se ejecute oculto y que arranque con el sistema, en win todo se vale y se puede  :twisted:

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado manex_1987

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1127
Re: Programando en AutoIT
« Respuesta #11 en: 01 de Mayo de 2008, 18:27:34 »
Buenas!

Esto del AutoIT es la monda.

Código: [Seleccionar]
AutoItSetOption("WinTitleMatchMode",1)

Run("C:\Archivos de programa\Mozilla Firefox 3 Beta 5\firefox.exe")
WinWaitActive("Mozilla")
WinSetState("Mozilla","",@SW_MAXIMIZE)
WinActivate("Mozilla")
Send('^t')
Send('^l')

Send('http://www.todopic.com.ar/foros/index.php?topic=20759.0{ENTER}')

TrayTip("TODOPIC","¡¡Buenos dias picmaniacos!!",-1)
Sleep(5000)



Es facilisimo de aprender!!

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18272
    • MicroPIC
Re: Programando en AutoIT
« Respuesta #12 en: 02 de Mayo de 2008, 03:10:52 »
Tiene buena pinta. Por fin podremos tener en Windows un sustituo de los antiguos .BAT  :D

Una pregunta, ¿los EXE que genera son autónomos o necesitan de la instalación de DLL para funcionar?

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5470
    • Electrónica Didacta
Re: Programando en AutoIT
« Respuesta #13 en: 03 de Mayo de 2008, 13:48:35 »
Tiene buena pinta. Por fin podremos tener en Windows un sustituo de los antiguos .BAT  :D

Una pregunta, ¿los EXE que genera son autónomos o necesitan de la instalación de DLL para funcionar?

las dos cosas  :P

Easy to learn BASIC-like syntax
Simulate keystrokes and mouse movements
Manipulate windows and processes
Interact with all standard windows controls
Scripts can be compiled into standalone executables
Create Graphical User Interfaces (GUIs)
COM support
Regular expressions

Directly call external DLL and Windows API functions
Scriptable RunAs functions
Detailed helpfile and large community-based support forums
Compatible with Windows 95/98/ME/NT4/2000/XP/2003/Vista
Unicode support
Digitally signed for peace of mind
Works with Windows Vista's User Account Control (UAC)



tiene una opción para compatibilidades entre S.O. y comprimir ejecutables



« Última modificación: 03 de Mayo de 2008, 13:57:13 por PalitroqueZ »
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5470
    • Electrónica Didacta
Re: Programando en AutoIT
« Respuesta #14 en: 06 de Mayo de 2008, 17:45:10 »
un ejemplo de un programilla que tengo casi terminado.

usando el Dependency Walker para ver las dll involucradas


El programilla realizado en Visual Basic


con_VB.JPG


el programilla escrito en Autoit

con_autoit.JPG


como podrán notar en el segundo, las dll son las que trae el windows, y son utilizadas directamente, mientras que el primero hay que lidiar con el intérpretre de VB.

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek


 

anything