Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: bemone en 12 Julio 2012, 01:20 am



Título: javascript en C++
Publicado por: bemone en 12 Julio 2012, 01:20 am
Buenas, necesito ejecutar un codigo javascript a una pagina desde C++ tal como hacen las extensiones Greasemonkey para firefox o black canvas script handler para chrome.

Hay alguna libreria o algo? Saludos.


Título: Re: javascript en C++
Publicado por: 0xDani en 12 Julio 2012, 01:57 am
No se muy bien como va eso del javascript, pero si es un ejecutable puedes buscar la funcion execl o algo asi, para ejecutar un archivo.

Saludos.


Título: Re: javascript en C++
Publicado por: bemone en 12 Julio 2012, 18:48 pm
No se muy bien como va eso del javascript, pero si es un ejecutable puedes buscar la funcion execl o algo asi, para ejecutar un archivo.

Saludos.

Lo que quiero hacer es tomar informacion desde una pagina como por ejemplo getElementById() y luego trabajar en base a eso, asignandole un valor a un form o bien haciendo click en una parte determinada de la pagina, todo esto en C++.


Título: Re: javascript en C++
Publicado por: 0xDani en 12 Julio 2012, 21:38 pm
¿Te refieres a hacer una peticion a una pagina? No entiendo muy bien que es lo que quieres.


Título: Re: javascript en C++
Publicado por: Foxy Rider en 14 Julio 2012, 17:55 pm
Tenés la librería V8 si querés empotrar soporte de JScript en tu app C++. Esta lib es el motor que usa el navegador Chromium/Chrome (Y ahora también Qt) ... Y en mi opinión, es lo mejor que hay *al día de la fecha*
Firefox tiene TraceMonkey, pero no sólo no es amigable con empotrarla en una app ... creo que ya no se puede (por lo menos los devs de Firefox hablaron muy negativamente de la posibilidad de permitir empotrar el motor de Firefox de forma *modular*)

https://code.google.com/p/v8

Saludos.

P.S → Otros motores quizá hay, pero estos dos son los más grosos.


Título: Re: javascript en C++
Publicado por: Foxy Rider en 14 Julio 2012, 17:58 pm
Uy, olvidate lo que te dije ... entendí mal, tenés que empotrar un motor entero para descargar la página junto con su jscript tanto como para manipular su ejecución, como para inyectar eventos (lo de los forms no es tanto drama y no requiere toda esta monstruosidad)
Es un quilombo (uno que te vá a inflar el binario a casi el tamaño de un navegador) ... ¿no te parece mejor hacerlo en el navegador?

Saludos.


Título: Re: javascript en C++
Publicado por: bemone en 14 Julio 2012, 18:03 pm
Mi idea era de hacerlo transparente, sin visualizar ninguna ventana. Supongo que con qt podre usar javascript en las paginas, gracias por la respuesta.


Título: Re: javascript en C++
Publicado por: Foxy Rider en 14 Julio 2012, 18:06 pm
Mi idea era de hacerlo transparente, sin visualizar ninguna ventana. Supongo que con qt podre usar javascript en las paginas, gracias por la respuesta.

El problema es que necesitás un motor de render y el de javascript, y toda la implementación estándar de las funciones que vienen en un navegador, para poder ejecutar todo debidamente. con lo que necesitás un motor de navegador, engordando el binario al tamaño de un navegador.
Pero no sólo eso, Qt sé que incluye v8 para scripting (que es un pedacito de lo que compone un navegador) ... también un webview, pero no sé si te permite las manipulaciones de bajo nivel que querés sobre la ejecución.

Saludos.