Managed Gecko

http://lxr.mozilla.org/mozilla/source/embedding/wrappers/DotNETEmbed/ManagedGecko.html#158
うーん。unmanaged codeを呼び出すmanaged codeってMSILとして出力されるのかな…。そこはOKだったとしても、managed codeからC++なunmanaged codeを呼び出す際には、C++コンパイラ間のバイナリ互換性の問題からは逃れられないように思う。
と考えると、最も現実的な解はC呼び出しだけでGecko組み込みができるような薄いC++/Cラッパーコードを書くことだと考えるわけで。何にせよプラットフォーム依存部分が少しは出てきそうな予感。残念。
後は、xptcallでXPCOMコンポーネントをimpersonateしてやれば実現できるようなできないようなというか、その具体的な方法を調べる必要があるかなってとこ。