AutoHotkey

AutoHotkey is a free, open-source scripting language for Windows that allows users to easily create small to complex scripts for all kinds of tasks such as: form fillers, auto-clicking, macros, etc.

qué puede hacer ?

Aquí tienes una tabla que resume algunas de las principales funcionalidades y acciones que puedes automatizar utilizando AutoHotkey (AHK), una herramienta potente para automatizar tareas en Windows.

Función/AcciónDescripción
Hotkeys (Teclas Rápidas)Crear combinaciones de teclas personalizadas para ejecutar comandos o scripts rápidamente.
Remapeo de teclasCambiar el comportamiento de una tecla específica o reasignar una tecla a otra.
Automatización de clicsSimular clics del mouse, arrastrar y soltar, o mover el cursor a una posición específica.
Autoescritura (Text Expansion)Crear atajos para expandir automáticamente frases o palabras largas a partir de abreviaturas.
Control de ventanasMover, redimensionar, cerrar, maximizar o cambiar el foco entre ventanas de aplicaciones.
Automatización de tareas repetitivasAutomatizar tareas como abrir programas, interactuar con ventanas, o realizar procesos repetitivos.
Enviar combinaciones de teclasSimular pulsaciones de teclas o combinaciones como Ctrl+C, Alt+Tab, etc.
Automatización de menúsAbrir, seleccionar opciones o interactuar con menús contextuales y de aplicaciones.
Control del portapapelesManipular el contenido del portapapeles: copiar, pegar, cortar o modificar el texto almacenado.
Repetición de accionesCrear bucles para repetir acciones un número específico de veces o indefinidamente.
Variables y expresionesUsar variables para almacenar datos, realizar cálculos, o manipular información.
CondicionalesEjecutar acciones dependiendo de condiciones específicas (if, else, etc.).
Búsqueda y manejo de ventanasBuscar ventanas por título o clase, y realizar acciones sobre ellas (cerrar, mover, ocultar).
Automatización de archivosCrear, abrir, editar o mover archivos y carpetas, y trabajar con directorios en el sistema.
TemporizadoresEjecutar acciones repetidas después de un intervalo de tiempo específico.
Monitoreo de eventosDetectar eventos del sistema, como presionar teclas, cambiar de ventana, o mover el ratón.
Combinaciones personalizadasCrear secuencias complejas de teclas o acciones que se ejecutan cuando una tecla o combinación es presionada.
Control del volumen y audioAjustar el volumen del sistema, cambiar dispositivos de audio o reproducir sonidos.
Automatización de la redAbrir sitios web, interactuar con navegadores o realizar acciones de red como enviar datos.
Ejecutar scripts externosEjecutar otros programas o scripts desde AutoHotkey.
Manipulación de imágenesTomar capturas de pantalla, buscar imágenes en pantalla y realizar acciones basadas en ello.
Reconocimiento de texto en pantalla (OCR)Reconocer texto en imágenes o ventanas mediante librerías externas.
Envío de mensajes a ventanasEnviar comandos o mensajes a ventanas específicas para automatizar su interacción.
Creación de interfaces gráficas (GUI)Crear ventanas, botones y otros controles para interactuar con scripts personalizados.
Control del sistema (APIs)Usar las APIs de Windows para realizar acciones avanzadas, como interactuar con el registro o los servicios del sistema.
Monitoreo de carpetasDetectar cambios en carpetas o archivos y realizar acciones automáticas en respuesta.
Gestión de procesosMonitorear y controlar procesos del sistema (iniciar, detener, cambiar prioridad, etc.).
Lectura/escritura en el registroAcceder, modificar o leer valores del registro de Windows.
Generación de informesCrear registros de eventos, acciones realizadas o errores para fines de auditoría o depuración.

AutoHotkey permite crear scripts para casi cualquier tarea que puedas imaginar en un entorno Windows, desde acciones simples hasta automatización avanzada que requiere interacción con múltiples aplicaciones o procesos del sistema.

Proyecto AFIP

; AutoHotkey script para abrir la página de AFIP e iniciar sesión

^!A::
{
    ; URL de la página de inicio de sesión de AFIP
    url := "https://auth.afip.gob.ar/contribuyente_/login.xhtml"

    ; Abrir la página de AFIP en el navegador predeterminado
    Run, %url%

    ; Pausa para que la página cargue (ajustar si es necesario)
    Sleep, 1000

    ; Cambia a la ventana del navegador activo
    WinActivate, ahk_class Chrome_WidgetWin_1 ; Si usas Chrome, ajusta según el navegador (e.g., Firefox, Edge)

    ; Esperar hasta que la ventana del navegador esté activa
    WinWaitActive, ahk_class Chrome_WidgetWin_1

    ; Simula escribir el CUIT en el campo de usuario
    Send, 203114XXXX2 ; Reemplaza TU_CUIT con tu número de CUIT
    Sleep, 500 ; Pausa breve

    ; Tabula hasta el campo de contraseña
    Send, {Tab}
    ;Sleep, 2500 ; Pausa breve

    ; Escribe la contraseña
    ;Send, TU_CONTRASEÑA ; Reemplaza TU_CONTRASEÑA con tu contraseña
    ;Sleep, 500 ; Pausa breve

    ; Tabula hasta el botón de iniciar sesión (o ajusta para presionar Enter directamente)
    ;Send, {Tab}{Tab}{Tab}{Enter}

    return
}

Explicación del código:
url := «https://auth.afip.gob.ar/contribuyente_/login.xhtml»: Se define la URL de la página de inicio de sesión de AFIP.
Run, %url%: Abre el navegador y carga la página de inicio de sesión.
Sleep, 5000: Pausa el script durante 5 segundos para permitir que la página cargue completamente (ajústalo según la velocidad de tu conexión).
WinActivate, ahk_class Chrome_WidgetWin_1: Activa la ventana del navegador (en este caso, se asume que es Chrome, pero puedes cambiar Chrome_WidgetWin_1 según el navegador que utilices).
Send, TU_CUIT: Escribe el CUIT en el campo correspondiente (debes reemplazar TU_CUIT por tu CUIT real).
Send, {Tab}: Usa la tecla Tab para navegar al siguiente campo (en este caso, el campo de la contraseña).
Send, TU_CONTRASEÑA: Escribe tu contraseña (reemplázala por tu contraseña real).
Send, {Tab}{Tab}{Tab}{Enter}: Navega hacia el botón de iniciar sesión usando Tab y lo presiona con Enter.
Advertencia:
No se recomienda almacenar contraseñas sensibles en texto plano en scripts, ya que pueden ser vulnerables. Una forma más segura de gestionar esto es utilizar un gestor de contraseñas o una autenticación más segura.

Ajustes según el navegador:
Si estás usando Firefox, cambia ahk_class Chrome_WidgetWin_1 a ahk_class MozillaWindowClass.
Si usas Microsoft Edge, puedes usar ahk_class Chrome_WidgetWin_1 (al compartir base con Chrome).

Ejecutar el script

Busca el archivo .ahk que acabas de guardar.

Haz doble clic en el archivo. Esto ejecutará el script de AutoHotkey y quedará activo en segundo plano.

Ahora puedes presionar la combinación de teclas que configuraste en el script para activar la función. En este caso, la combinación es Ctrl + Alt + A (^!A en el código). Cuando la presiones, el script:

Abrirá la página de AFIP.

Ingresará tu CUIT y contraseña.

Iniciará sesión automáticamente.

https://www.autohotkey.com/boards/viewforum.php?f=39

Mi programa antivirus marcó AutoHotkey o un script compilado como malware. ¿Es realmente un virus?

Aunque es muy posible que el archivo haya sido infectado, la mayoría de las veces estas alertas son falsos positivos, lo que significa que el programa antivirus está equivocado. Una sugerencia común es cargar el archivo en un servicio en línea como virustotal o Jotti y ver qué tienen que decir otros programas antivirus. En caso de duda, puede enviar el archivo al proveedor de su software antivirus para su confirmación. Esto también podría ayudarnos a nosotros y a otros usuarios de AutoHotkey, ya que el proveedor puede confirmar que se trata de un falso positivo y arreglar su producto para que funcione bien con AutoHotkey.

Los falsos positivos pueden ser más comunes para scripts compilados que han sido comprimidos, como con UPX (predeterminado para AutoHotkey 1.0 pero no para 1.1) o MPRESS (opcional para AutoHotkey 1.1). Como la instalación predeterminada de AutoHotkey no incluye un compresor, los scripts compilados no se comprimen de forma predeterminada.

En este punto, entiendo que los desarrolladores indican que si la aplicación o el script ha sido distribuido en la red por un tercero, éste podría haber sufrido una modificación malintencionada, por lo que habría que extremar las precauciones.

Intente subir los archivos a VirusTotal para ver si otros motores anti-malwares y antivirus detectan la amenaza.