Ayuda Para Lanzador de Keystrokes (Atajos de Teclas)

Esta sección es para preguntas sobre programación/scripting usando AutoHotkey.
Altober
Posts: 6
Joined: 22 Mar 2018, 16:37

Ayuda Para Lanzador de Keystrokes (Atajos de Teclas)

22 Mar 2018, 16:58

Hola a todos. Muy buenas tardes.
MI nombre es Alberto (por eso mi nick :lol: ), tengo 50 años y me gusta mucho Autohotkey, aunque me está costando dar mis primeros pasos con este completo lenguaje de programación.

Les cuento... Soy un gran coleccionista de películas, y después de descargarlas las "limpio" (como los pescados).
Descargo en formato MKV, y en su interior vienen con mucha publicidad de la página que se descarga, y no me gusta ver esas publicidades en mi TV cuando veo las películas.
Para ese trabajo me valgo del programa MKVToolnix.
El tema es que la tarea y los textos a escribir son tediosos y repititivos, y repititivos :lol:
Ahí es donde nace la idea de hacerlo con Autohotkey.
Necesito un "programita" que se componga básicamente de 3 módulos (guis?) el primero es para el video (casi siempre será H264), el segundo es para el audio (ahí puede haber mucha variedad, aunque casi siempre será inglés y español, y finalmente subtítulos, que casi siempre será Español e Inglés.
Pensé en un gui que me interrogue acerca de cada ítem, y yo ponga un "check" (palomitas, tildes, según país de cada uno) y al aceptar AHK haga el trabajo tedioso.
Pero me estoy volviendo loco con los gosubs, y con que no puedo ir concretamente a la subrutina deseada.
En fin, pongo el código que fui haciendo (aclaro que no está finalizado), a ver si alguien me puede ayudar, cosa que agradecería muchísimo, y así de paso aprendo.


Code: [Select all] [Expand] [Download] GeSHi © Codebox Plus



Bueno, espero se entienda la consulta, he tratado de hacerla lo más completa y prolija posible (por suerte algo conozco acerca de bbcode por algunos foros en los que he participado.
Desde ya, muchísimas gracias!

Edit:
Código actualizado: Actualmente funciona Perfectamente la Pestaña Video, pero en la pestaña Audio funciona correctamente la primera opción, cuando se tilda la segunda, el programa lanza la primera opción :thumbdown:

Edit2:
Creí que el foro en español sería el lugar más apropiado para pedir ayuda con mi script, no pensé que estaba abandonado.
No pretendo hacer una consulta y obtener una respuesta a los 3 minutos, pero ya han pasado casi 24 horas y absolutamente nadie ha podido contestar.
El problema es que si hago la misma consulta en el foro en inglés, seguramente estaré violando alguna regla, así que no me queda otra que esperar. :thumbdown:
User avatar
Flipeador
Posts: 598
Joined: 15 Nov 2014, 21:31
GitHub: Flipeador
Location: Argentina
Contact:

Re: Ayuda Para Lanzador de Keystrokes (Atajos de Teclas)

23 Mar 2018, 22:18

Hola,
Creí que el foro en español sería el lugar más apropiado para pedir ayuda con mi script, no pensé que estaba abandonado.

La verdad no hay muchos usuarios activos que respondan en el foro en español, obviamente el foro en inglés es el principal y más activo, pero qué, como tu bien dijiste No pretendo hacer una consulta y obtener una respuesta a los 3 minutos no quiere decir que este abandonado; a veces se está muy ocupado, o puede no llamar mucho la atención ciertos temas.

La información que proporcionas, acerca de los pasos que das en el programa exactamente, no están del todo claro, y se hace difícil responderte, ya que no expones una duda sobre el funcionamiento de algo en concreto. Unas imágenes sobre la interfaz editada con los pasos a seguir sería lo más apropiado.

Bueno, espero se entienda la consulta, he tratado de hacerla lo más completa y prolija posible (por suerte algo conozco acerca de bbcode por algunos foros en los que he participado.

Pues esto también seria bueno que lo apliques al código que escribas, te recomiendo que leas Código espagueti y lo evites, es normal cuando uno recién empieza... las funciones no muerden ;)

Código actualizado: Actualmente funciona Perfectamente la Pestaña Video, pero en la pestaña Audio funciona correctamente la primera opción, cuando se tilda la segunda, el programa lanza la primera opción

Bueno, parece que tu problema son los tiempos (retrasos, a veces necesarios entre cada comando) y el uso de Send para interactuar con los controles de la ventana, puede que te sirva el uso de los comandos para controles. Eso lo vas a tener que ver tú, e ir intentando con Sleeps y SendInput hasta que tu código Interactúe bien con la ventana de MKVToolnix.
Con respecto a lo último cuando se tilda la segunda, el programa lanza la primera opción, no está del todo claro, como te dije, una imagen sería muy útil.

PD: el IfWinExist es innecesario. Se supone la ventana existe. Además, en caso de que sea necesario comprobar, deberías agregar {} así afecta a todo el código entre ellos y no solo al WinActivate.

El problema es que si hago la misma consulta en el foro en inglés, seguramente estaré violando alguna regla, así que no me queda otra que esperar.

Lamentablemente no hay un tema dedicado explícitamente a las reglas. Parece que "no te has aguantado".
Windws 1♂ Pro 64-Bits I make scripts for AHKv2 (compiler) & WIN_7+ Spanish Argentina SublimeText 3 & AHKv2
Altober
Posts: 6
Joined: 22 Mar 2018, 16:37

Re: Ayuda Para Lanzador de Keystrokes (Atajos de Teclas)

23 Mar 2018, 23:45

Gracias por la respuesta.
Especificamente mi duda con el código es la siguiente.
Cada opción que yo tildo (check) en el chekbox, es una atajo de teclado distinto que el script lanza sobre MKVToolnix.
El gui lo dividí en tres pestañas, Video, Audio y Subtítulos.
La pestaña video tiene dos items para tildar, y funciona correctamente.
La pestaña audio tiene varios items para tildar...
Concretamente, el primer item es AC3_English, cuando lo.tildo, se activa correctamente sobre MKVToolnix, el segundo item es E-AC3English, y ahí tengo el problema, cuando tildo únicamente esta segunda opción, el script activa la primera opción.
Esto no lo pude solucionar.
No entiendo porque le digo que vaya a una subrutina y va a la otra.
En fin....

Si bien no tengo claro como solucionar concretamente este error que me está frenando, voy a leer los "deberes" que me dejaste.
Busqué y leí mucho, baje como 30 ahk de ejemplos para analizar los códigos de cada uno
Y busqué muchísimas variantes para mi script, lamentablemente ninguna funcionó.
Gracias de nuevo!
User avatar
Flipeador
Posts: 598
Joined: 15 Nov 2014, 21:31
GitHub: Flipeador
Location: Argentina
Contact:

Re: Ayuda Para Lanzador de Keystrokes (Atajos de Teclas)

24 Mar 2018, 06:55

Debes quitar el prefijo v en tus variables, por ejemplo vAC3Eng --> AC3Eng. Puedes añadir un MsgBox para comprobar el contenido de las variables (a esto se le denomina debugging).
El prefijo v es para cuando creas los controles, para indicarle a AHK el nombre de la variable asociada al control. Lee aquí.
Windws 1♂ Pro 64-Bits I make scripts for AHKv2 (compiler) & WIN_7+ Spanish Argentina SublimeText 3 & AHKv2
Altober
Posts: 6
Joined: 22 Mar 2018, 16:37

Re: Ayuda Para Lanzador de Keystrokes (Atajos de Teclas)

24 Mar 2018, 07:26

Muchas Gracias Flipeador! A trabajar entonces... Después edito y te cuento mis progresos (espero no sean mis "fracasos")
Altober
Posts: 6
Joined: 22 Mar 2018, 16:37

Re: Ayuda Para Lanzador de Keystrokes (Atajos de Teclas)

25 Mar 2018, 08:43

Pues no, sacando la v de las variables el script se vuelve completamente obsoleto. Me pone Invalid option sañalándome justamente AC3Eng.

De hecho algunas de las tantas ideas para mi script las saqué de las ayudas de AHK, y ví que allí si tienen la v y eso fue lo que traté de imitar.

Code: [Select all] [Expand] [Download] GeSHi © Codebox Plus



El problema es que este script tiene gosubs a una sola subrutina, y yo tengo más de una subrutina, claramente la falla se produce en la parte donde no puedo cerrar los if/gosub con un
buttonCancel:
GuiEscape:
GuiClose:


Ya que solo lo puedo hacer una vez, debido a que si lo vuelvo a hacer me sale error por etiquetas repetidas.

En fin, sigo golpeándome la cabeza contra la pared
Gracias.
User avatar
Flipeador
Posts: 598
Joined: 15 Nov 2014, 21:31
GitHub: Flipeador
Location: Argentina
Contact:

Re: Ayuda Para Lanzador de Keystrokes (Atajos de Teclas)

25 Mar 2018, 12:31

¿Has leído el enlace que te puse?, porque no me has entendido lo de la v.
Cuando creas un control, por ejemplo Gui, Add, Checkbox, vH264 , H264 si va la v, pero luego por ejemplo en If (vH64=1) la tienes que quitar... es solo un prefijo y no forma parte de la variable.
Windws 1♂ Pro 64-Bits I make scripts for AHKv2 (compiler) & WIN_7+ Spanish Argentina SublimeText 3 & AHKv2
Altober
Posts: 6
Joined: 22 Mar 2018, 16:37

Re: Ayuda Para Lanzador de Keystrokes (Atajos de Teclas)

25 Mar 2018, 17:51

Perdón, no había entendido.
Si leí absolutamente todos los enlaces que me pusiste, y como 150 más también.
Por cierto, muchas gracias! El script ahora está funcionando.
Además mi poder de observación evidentemente es muy pobre, en el código que puse de ejemplo yo mismo te estoy mostrando mi error, ya que el autor de esos scripts quitaba la v de los if
User avatar
Flipeador
Posts: 598
Joined: 15 Nov 2014, 21:31
GitHub: Flipeador
Location: Argentina
Contact:

Re: Ayuda Para Lanzador de Keystrokes (Atajos de Teclas)

26 Mar 2018, 05:09

Pues que bueno que lo hayas podido solucionar, si tienes alguna otra duda, no dudes en preguntar :) .
Estuve leyendo tu tema en ingles (es ingles, ¿no? :lol:), más concretamente:
Altober wrote:Inicially I made this ask in spanish forum, but unfortunately after 24hs no one answer in my ask.

y... :headwall: haces quedar al foro en español más abandonado de lo normal :lolno:.

Saludos! :wave:


Spoiler
;)
Windws 1♂ Pro 64-Bits I make scripts for AHKv2 (compiler) & WIN_7+ Spanish Argentina SublimeText 3 & AHKv2
Altober
Posts: 6
Joined: 22 Mar 2018, 16:37

Re: Ayuda Para Lanzador de Keystrokes (Atajos de Teclas)

26 Mar 2018, 10:05

Muchas Gracias de nuevo! El script ya fue terminado, y me está siendo de muchísima utilidad con mis películas.
Por cierto, seguramente estás teniendo "visiones forísticas" (es un mal que ataca a la gente que se pasa más de dos años en foros), ya que el tema que citas en un supuesto inglés, no veo que exista ehh. :lol: :lol:
Saludos y Gracias de nuevo!

Ooops, parece que no eran "visiones forísticas" entonces. Al final los moderadores tienen demasiadas herramientas! :lol:

Return to “Pedir Ayuda”

Who is online

Users browsing this forum: No registered users and 1 guest