habilitar gratis google desactivar cómo chrome activar javascript delphi

gratis - ¿Cómo puedo usar el intérprete de JavaScript V8 de Google Chrome desde Delphi?



javascript chrome (6)

Me gustaría insertar el intérprete de JavaScript V8 que se incluye con Google Chrome en mi aplicación Delphi. Soy consciente del proyecto de código abierto incrustado de cromo de Google, pero me gustaría saber si alguien conocía alguna envoltura de Pascal / Delphi.

Hay un proyecto de ejemplo incluido con el archivo zip en el sitio que he vinculado, que está escrito en C ++. Si nada más, trabajaré lenta y dolorosamente para convertirlo.

ACTUALIZAR :
Solo quiero insertar el intérprete de JavaScript V8, no el navegador Chromium.


La solución más ideal sería crear un contenedor, preferiblemente que consuma la fuente original sin modificar, y compilar ese contenedor en un archivo OBJ (usando C ++) que luego se vincula a Delphi, donde otro "contenedor" expone el motor a través de un estándar más objeto pascal sintaxis Este enfoque permitiría cambios en el motor sin necesidad de una conversión completa cada vez que se agreguen nuevas funciones o un rendimiento adicional. La única desventaja de este enfoque es que se perderá algo de rendimiento al navegar por las capas ... pero espero que sea mínimo.


Si de hecho Chrome es un navegador que desea incorporar a su aplicación, debe consultar Google Chrome Frame , expone las interfaces COM, principalmente para integrarse en Internet Explorer, pero en teoría deberíamos poder acceder a ellas también.

(No estoy seguro porque me gustaría probarlo yo mismo, pero está en una lista (larga) de cosas realmente buenas para probar cuando las encuentre.) Actualización : He tenido un rápido avance en tiene un error "Sin interfaz admitida" y lo publicó aquí .



He estado usando el puente SpiderMonkey también, sin ningún problema. Se ejecuta razonablemente rápido, sin una gran huella, y aún no ha tenido problemas con Unicode.


Para el registro: hgourvest ha publicado Delphi Chromium Embedded para Google Code.

Editar 2013-01-15:

Otro proyecto del mismo autor esta vez envolviendo CEF3: DCEF3


A partir del 1 de junio de 2016, tenemos v8delphiwrapper , felicitaciones al desarrollador @zolagiggszhou. Y me gustaría mostrarte un ejemplo de código:

Ejecute el código js y devuelva el resultado como una string :

Memo2.Text := FEngine.eval(Memo1.Text);

Accediendo al objeto Delphi desde js:

1 - Suponiendo que tienes una clase Delphi como esta:

TJsAccessableClass = class public function add(a,b: Double): Double; function httpEncode(const s: string): string; end;

2 - Lo registra con el motor v8 js:

FObjectTemplate2 := FEngine.RegisterRttiClass(TJsAccessableClass); FJsAccessableObject := FObjectTemplate2.CreateInstance(TJsAccessableClass.Create); Fv8GlobalObject.SetObject(''delphiObj'', FJsAccessableObject);

3 - Ahora puedes llamar a tu método Delphi desde js :

var s = delphiObj.httpEncode(''/~!f234'');

¡Muy genial! Más ejemplo, compruebe el proyecto de ejemplo v8delphiwrapper