--- title: XPCOM slug: Mozilla/Tech/XPCOM tags: - Landing - Mozilla - XPCOM - アドオン - 拡張機能 translation_of: Mozilla/Tech/XPCOM ---
XPCOM は Microsoft COM と同じクロスプラットフォームのコンポーネントオブジェクトモデルです。これには複数の言語バインディングがあり、XPCOM コンポーネントを C++ に加えて JavaScript、Java、Pythonで使用および実装することができます。XPCOM のインタフェースは XPIDL という IDL の方言で定義されています。
XPCOM は Firefox 拡張機能ではもはや利用できません。代わりに WebExtensions を使用してください。
XPCOM 自体は一連のコアコンポーネントとクラスを提供します。XPCOM コンポーネントの大部分はこのコアセットの一部ではなく、プラットフォームの他の部分 (例えば Gecko や Necko) によって提供されます。アプリケーション、または拡張機能を使用することもできます。
extensionname@organization.tld
形式の ID で識別することができます(また、そうするべきです)。xpcom/glue/nsIGenericFactory.h
にある機能を利用して生成されたファクトリのことを指します。nsCOMPtr
について書かれたすべてを集めたものです。もしあなたが nsCOMPtr
について疑問があり、このドキュメントでは分からないのであれば、 おそらくそれに答えられるドキュメントはないでしょう。XPCOM ニュースグループ、または他のベテランの nsCOMPtr
ユーザに尋ねる、あるいは実験して答えを見つける、などの別の手段で答えを得るしかありません。nsnull
.wrappedJSObject
はXPConnectラッパで利用できることがあるプロパティです。利用できる場合、それはあなたに、ラッパによって隠蔽されたJavaScriptオブジェクトへのアクセスを可能にします。xptcall
は、低レベルの XPCOM メソッド呼び出しのための小さなライブラリです。プラットフォーム固有の C/C++ とアセンブラ言語のコードを使って実装されています。異なる言語間の呼び出しと異なるスレッドへのメソッド呼び出しを容易にするためのものです。 Mozillaをあらゆるプラットフォーム上で動作させるためには、このコードを移植する必要があります。