Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Avsikt
COM är ett plattformsoberoende, distribuerat, objektorienterat system för att skapa binära programvarukomponenter som kan interagera. COM är grundtekniken för Microsofts OLE-tekniker (sammansatta dokument) och ActiveX-tekniker (Internetaktiverade komponenter).
Tip
Modern C++ och COM: Om du skriver ny C++-kod som använder COM-gränssnitt föredrar du smarta pekaromslutningar framför råa AddRef/Release anrop:
| Tillvägagångssätt | När det bör användas | Header |
|---|---|---|
C++/WinRTwinrt::com_ptr<T> |
Ny Windows Runtime eller klassisk COM-kod |
<winrt/base.h> (C++/WinRT-projektion) |
WRLMicrosoft::WRL::ComPtr<T> |
Befintliga kodbaser, klassisk COM, inget C++/WinRT-beroende | <wrl/client.h> |
Raw COM (AddRef/Release) |
Bibliotek på låg nivå, ABI-gränser, COM-serverimplementeringar | <unknwn.h> |
Smarta pekare eliminerar de vanligaste COM-buggarna: läckta referenser, dubbelversion och användning efter lansering. Mer information finns i Hantera objektlivslängder via referensräkning .
Tillämpliga
COM-objekt kan skapas med en mängd olika programmeringsspråk. Objektorienterade språk, till exempel C++, tillhandahåller programmeringsmekanismer som förenklar implementeringen av COM-objekt. Dessa objekt kan finnas i en enda process, i andra processer, även på fjärrdatorer.
Krav vid körning
Information om vilka operativsystem som krävs för att använda ett visst gränssnitt eller en viss funktion finns i avsnittet Krav i dokumentationen för gränssnittet eller funktionen.
I det här avsnittet
| Ämne | Beskrivning |
|---|---|
|
COM-grunderna |
Beskriver de grundläggande begreppen och programmeringsreferensen. |
|
OLE och dataöverföring |
Beskriver sammansatta dokument och dataöverföring. |
|
kontroller och egenskapssidor |
Beskriver ActiveX-kontroller och egenskapssidor. |
|
COM-språköversättningar |
Beskriver skillnaderna mellan programmeringsspråk och beskriver hur du översätter COM-objektsyntax från ett språk till ett annat. |
Relaterad dokumentation
| Ämne | Beskrivning |
|---|---|
|
COM-grunderna |
Beskriver de grundläggande begreppen och programmeringsreferensen. |
|
OLE och dataöverföring |
Beskriver sammansatta dokument och dataöverföring. |
|
kontroller och egenskapssidor |
Beskriver ActiveX-kontroller och egenskapssidor. |
|
COM-språköversättningar |
Beskriver skillnaderna mellan programmeringsspråk och beskriver hur du översätter COM-objektsyntax från ett språk till ett annat. |
Relaterade ämnen
| Ämne | Beskrivning |
|---|---|
|
Komponentobjektmodell (COM) |
COM är ett plattformsoberoende, distribuerat, objektorienterat system för att skapa binära programvarukomponenter som kan interagera. COM är grundtekniken för Microsofts OLE-tekniker (sammansatta dokument) och ActiveX-tekniker (Internetaktiverade komponenter). |
|
Automation |
Automation gör det möjligt för programvarupaket att exponera sina unika funktioner för skriptverktyg och andra program. Automation använder komponentobjektmodellen (COM), men kan implementeras oberoende av andra OLE-funktioner, till exempel aktivering på plats. |
|
Microsoft Interface Definition Language (MIDL) |
Microsoft Interface Definition Language (MIDL) definierar gränssnitt mellan klient- och serverprogram. Microsoft inkluderar MIDL-kompilatorn med Platform Software Development Kit (SDK) för att göra det möjligt för utvecklare att skapa de gränssnittsdefinitionsspråkfiler (IDL) och programkonfigurationsfiler (ACF) som krävs för RPC-gränssnitt (remote procedure call) och COM/DCOM-gränssnitt. MIDL stöder också generering av typbibliotek för OLE Automation. |
|
Strukturerad lagring |
Structured Storage tillhandahåller fil- och datapersistence i COM genom att hantera en enda fil som en strukturerad samling objekt som kallas lagring och strömmar. |
|
COM+ |
COM+ är en utveckling av Microsoft Component Object Model (COM) och Microsoft Transaction Server (MTS). COM+ bygger på och utökar program som skrivits med COM, MTS och andra COM-baserade tekniker. |