1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
---
title: XPCOM
slug: XPCOM
tags:
- Strony_wymagające_dopracowania
- Wszystkie_kategorie
- XPCOM
translation_of: Mozilla/Tech/XPCOM
---
<div class="warning">
<p><strong>WebExtensions are becoming the new standard for creating add-ons. </strong>Eventually support for XPCOM add-ons will be deprecated, so you should begin to investigate porting your add-ons to use the <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions">WebExtensions</a> API, and <a href="https://mzl.la/webext-feature-needed">report any missing functionality</a> so we can be sure to address your concerns. Work is ongoing on WebExtension capabilities, so your input will help prioritize and plan the work. To learn more about the kinds of changes that will be needed, see <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Comparison_with_XUL_XPCOM_extensions">Comparison with XUL/XPCOM extensions</a>. In addition, any binaries you use will then need to be converted for use with the WebExtensions <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Native_messaging">native messaging</a> API, or compiled using <a href="https://webassembly.github.io/">WebAssembly</a> or <a href="/en-US/docs/Mozilla/Projects/Emscripten">Emscripten</a>.</p>
</div>
<div class="callout-box"><strong>Wprowadzenie do XPCOM</strong>
<p>Pięcio częściowy przewodnik <a class="external" href="http://www-128.ibm.com/developerworks/">IBM developerWorks</a>: <a class="external" href="http://www.ibm.com/developerworks/webservices/library/co-xpcom.html">Cz. I</a>, <a class="external" href="http://www.ibm.com/developerworks/webservices/library/co-xpcom2.html">Cz. II</a>, <a class="external" href="http://www.ibm.com/developerworks/webservices/library/co-xpcom3.html">Cz. III</a>, <a class="external" href="http://www.ibm.com/developerworks/webservices/library/co-xpcom4/">Cz. IV</a>, <a class="external" href="http://www.ibm.com/developerworks/webservices/library/co-xpcom5.html">Cz. V</a></p>
</div>
<div><strong>XPCOM</strong> jest międzyplatformowym komponentowo-obiektowym systemem, analogicznym do COM Microsoftu. Obsługuje liczne <a href="/pl/Oprawa_j%C4%99zyka" title="pl/Oprawa_języka">języki</a>, dzięki czemu komponenty XPCOM mogą być używane zarówno w JavaScript, Java jak i Python - także we współpracy z C++. Intefejsy XPCOM są zdefiniowane w dialekcie IDL zwanym <a href="/pl/XPIDL" title="pl/XPIDL">XPIDL</a>.
<p>XPCOM dostarcza zestaw głównych komponentów i klas, dotyczących miedzy innymi zarządzania plikami i pamięcią, procesów, podstawowych typów danych (łańcuchy znaków, tablice), etc. Większość komponentów nie jest częścią tego zestawu - są one dostarczane poprzez inne elementy platformy (na przykład: <a href="/pl/Gecko" title="pl/Gecko">Gecko</a> or <a href="/pl/Necko" title="pl/Necko">Necko</a>), aplikacje lub nawet rozszerzenia.</p>
</div>
<p> </p>
<table class="topicpage-table">
<tbody>
<tr>
<td>
<h4 id="Dokumentacja" name="Dokumentacja"><a href="/Special:Tags?tag=XPCOM&language=pl" title="Special:Tags?tag=XPCOM&language=pl">Dokumentacja</a></h4>
<h5 id="Podstawowa_dokumentacja_XPCOM" name="Podstawowa_dokumentacja_XPCOM">Podstawowa dokumentacja XPCOM</h5>
<dl>
<dt><a href="/pl/XPCOM_API_Reference" title="pl/XPCOM_API_Reference">XPCOM API Reference</a></dt>
<dd><small>Dokumentacja głównych komponentów, interfejsów i funkcji dostarczanych przez XPCOM.</small></dd>
</dl>
<dl>
<dt><a href="/pl/XPCOM_string_guide" title="pl/XPCOM_string_guide">String</a>, <a href="/pl/XPCOM_hashtable_guide" title="pl/XPCOM_hashtable_guide">hashtable</a>, and <a href="/pl/XPCOM_array_guide" title="pl/XPCOM_array_guide">array</a> guides</dt>
<dd><small>Używanie podstawowych typów danych.</small></dd>
</dl>
<dl>
<dt><a href="/pl/XPCOM_Glue" title="pl/XPCOM_Glue">XPCOM Glue</a></dt>
<dd><small>XPCOM Glue umożliwia używanie funkcji i klas XPCOM bez zależności od niezamrożonych części. (xpcom_core.{dll,so,dylib}).</small></dd>
</dl>
<h5 id="Tworzenie_komponent.C3.B3w_XPCOM" name="Tworzenie_komponent.C3.B3w_XPCOM">Tworzenie komponentów XPCOM</h5>
<dl>
<dt><a href="/pl/Creating_XPCOM_Components" title="pl/Creating_XPCOM_Components">Creating XPCOM Components</a></dt>
<dd><small>Kurs omawiający tworzenie komponentów kontrolujących zachowanie przeglądarki.</small></dd>
</dl>
<dl>
<dt><a href="/pl/How_to_Build_an_XPCOM_Component_in_Javascript" title="pl/How_to_Build_an_XPCOM_Component_in_Javascript">How to Build an XPCOM Component in Javascript</a></dt>
<dd><small>Quick-start guide for writing JavaScript components</small></dd>
</dl>
<h5 id="R.C3.B3.C5.BCne" name="R.C3.B3.C5.BCne">Różne</h5>
<dl>
<dt><a href="/pl/Using_XPCOM_in_JavaScript_without_leaking" title="pl/Using_XPCOM_in_JavaScript_without_leaking">Using XPCOM in JavaScript without leaking</a></dt>
<dd><small>Using XPCOM in JavaScript (also known as <a href="/pl/XPConnect" title="pl/XPConnect">XPConnect</a>) is an environment where memory management issues are not obvious. Despite this, it's easy to write JavaScript code that leaks, because some of the objects you're dealing with are reference-counted behind the scenes.</small></dd>
</dl>
<p><span class="alllinks"><a href="/Special:Tags?tag=XPCOM&language=pl" title="Special:Tags?tag=XPCOM&language=pl">Pokaż wszystkie...</a></span></p>
</td>
<td>
<h4 id="Spo.C5.82eczno.C5.9B.C4.87" name="Spo.C5.82eczno.C5.9B.C4.87">Społeczność</h4>
<ul>
<li>Obejrzyj fora Mozilli...</li>
</ul>
<p></p><ul>
<li><a href="https://lists.mozilla.org/listinfo/dev-tech-xpcom"> jako listę dyskusyjna</a></li>
<li><a href="http://groups.google.com/group/mozilla.dev.tech.xpcom"> jako newsgroup</a></li>
<li><a href="http://groups.google.com/group/mozilla.dev.tech.xpcom/feeds"> jako kanał</a></li>
</ul><p></p>
<h4 id="Narz.C4.99dzia" name="Narz.C4.99dzia">Narzędzia</h4>
<p><a class="external" href="http://ted.mielczarek.org/code/mozilla/jscomponentwiz/">JavaScript Component Wizard</a></p>
<h4 id="Powi.C4.85zane_tematy" name="Powi.C4.85zane_tematy">Powiązane tematy</h4>
<dl>
<dd><a href="/pl/XPCOM/Oprawa_j%C4%99zyka" title="pl/XPCOM/Oprawa_języka">Oprawa języka</a>, <a href="/pl/JavaXPCOM" title="pl/JavaXPCOM">JavaXPCOM</a>, <a href="/pl/XPConnect" title="pl/XPConnect">XPConnect</a>, <a href="/pl/PlXPCOM" title="pl/PlXPCOM">PlXPCOM</a>, <a href="/pl/PyXPCOM" title="pl/PyXPCOM">PyXPCOM</a>, <a href="/pl/RbXPCOM" title="pl/RbXPCOM">RbXPCOM</a>, <a href="/pl/JavaScript" title="pl/JavaScript">JavaScript</a></dd>
</dl>
</td>
</tr>
</tbody>
</table>
<p><span class="comment">Categories</span></p>
<p><span class="comment">Interwiki Language Links</span></p>
|