[fpc-pascal] XPCOM and freepascal

Michael Van Canneyt michael at freepascal.org
Tue Mar 23 18:30:37 CET 2010

On Tue, 23 Mar 2010, Johannes Nohl wrote:

>>> I wonder if it's possible to develop extensions (aka Add-Ons) for
>>> Firefox (or in my case Thunderbird). I'm totaly unfamiliar to the
>>> stuff right now. But the advantage I could think of is 1) I don't know
>>> C++ and 2) it is easy to cross compile code for different platforms.
>>> Writing extensions without javascript needs XPCOM bindings. I saw that
>>> there're some for using the gecko rendering engine in Firefox. Is
>>> there a more general thing to access XPCOM? Anybody has experience
>>> with this? I'm a total C++ noob.
>> Try looking at the gecko integration package. It is meant to do the opposite
>> (integrating gecko in your app) but it also uses
>> xpcom, and you should get ideas from that.
> Thanks Michael, I already found that. You may find there the
> relationship between XPCOM C++ bindings for Gecko and how to use them
> in fpc app. In my case i'm interested to access the adressbook in
> Thunderbird. Even if I would get along to find the right functions I
> have no idea how to process returned data. I guess you have to be a
> very good C++ developer for that as well. But that's ways over my
> skills, I think.

I don't think so: everything is done using interfaces, and as soon as
you have the definition of an interface, the rest should not be a problem.
The main problem is to get the interface definitions.

I think they provide an IDL file, and you'd have to produce a pascal file
from it. As I remember, there should be an idl-pascal on the net somewhere.


More information about the fpc-pascal mailing list