36 votes

Comment incorporer un objet de navigateur, autre que IE <n> , dans une application Delphi

L'utilisation de TWebBrowser par défaut facilite l'intégration d'un navigateur Web. Malheureusement, celui qui entre par défaut est IE <n>.

Je me demande comment on intègre un Gecko ou un WebKit.

  1. Existe-t-il des exemples VCL quelque part?
  2. Sinon, comment s'y prendrait-on?
  3. Où est le meilleur endroit pour trouver le noyau pour Gecko et / ou WebKit dans un format intégrable?

21voto

Lars Truijens Points 24005

TWebBrowser qui est IE. Ce n'est pas un plugable de construction pour les navigateurs. Vous pouvez avoir d'autres navigateurs intégré dans votre application. Voir

16voto

Carlos Barbosa Points 1374

Une alternative viable est CEF - Chrome Incorporé Cadre qui englobe le navigateur Chromium qui encapsule WebKit. Cette bibliothèque est fournie au format Dll avec une exporté C API.

Il y a une interface delphi disponible à code.google.com/p/delphichromiumembedded

Je l'ai utilisé avec ma propre implémentation de l'interface et fonctionne très bien, mais pas si facile à utiliser correctement comme THTML ou IE, mais idéal pour quiconque a besoin d'un puissant et intégrable de navigateur.

3voto

Otherside Points 1952

Edit: Lars me battre pour elle, malheureusement

Il y a bien un contrôle ActiveX basé sur le moteur Gecko qui tente de présenter une copie exacte de la IWebBrowser API (qui TWebBrowser utilise).

Vous pouvez le trouver ici: http://www.iol.ie/~locka/mozilla/control.htm Malheureusement, on dirait qu'il n'a pas été mis à jour en temps. La dernière version est basée sur Gecko 1.7.12 et je crois Gecko en est actuellement à 1,9.x (utilisé dans Firefox 3)

3voto

dcraggs Points 723

Une alternative est le composant THTMLViewer. Je l'utilise depuis quelques années.

Ceci est maintenant disponible gratuitement. le site Web est ici http://pbear.com/htmlviewers.html . Selon le site Web songbeamer ( http://www.songbeamer.com/delphi/ ), une version de Delphi 2009 est disponible.

2voto

TomC Points 1091

Au cours des trois dernières années, j'ai rencontré très peu dans la voie de l'incorporation de Gecko en Delphi. Une bibliothèque qui a montré jusqu'à assez tard dans le jeu (pour moi) était le GeckoSDK projet sur SourceForge. J'ai fait beaucoup de travail au début à essayer de rendre intégré Gecko fonctionner correctement dans Delphi. Notre première tentative à un moteur de rendu Gecko interne sur le "navigateur" a été construit à l'aide de Delphi et Gecko 1.8. Depuis, nous avons déménagé et notre navigateur est maintenant un XULRunner de l'application. J'ai des morceaux de code autour de la pose sur mon disque dur et pourtant, depuis que le début de la tentative que je n'ai pas encore supprimé.

Lors de lancement de Mozilla Gecko 2.0 je pense qu'il va devenir beaucoup plus facile à intégrer dans Delphi. Le XPCOM objet système de Gecko le rend très difficile à intégrer car la plupart de tout retourne un NS_RESULT. Les chaînes ont surtout été dur.

edit: je viens de regarder à travers mes anciens favoris (presque tous sont morts) et effectué une recherche pour une nouvelle url pour la langue Japonaise "bagel" navigateur basé sur Gecko et trouvé ici,

http://github.com/plus7/bagel/tree/master/Legacy.

C'est probablement votre meilleur pari pour quelques excellents code pour démarrer à partir. Malheureusement, les commentaires dans le code sont Japonais et l'auteur n'a jamais répondu aux questions.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X