Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Microsoft számos COM-felületet definiál. A legtöbb esetben újra felhasználhatja ezeket az általános felületeket. Egyes alkalmazások azonban olyan speciális követelményekkel rendelkeznek, amelyek kívánatossá vagy szükségessé teszik a saját objektumfelületek definiálásához.
Minden COM-interfésznek közvetlenül vagy közvetve az IUnknown interfészből kell származnia. Ezen a kényszeren belül az egyéni interfész szinte bármilyen metódust vagy paramétert támogat, beleértve az aszinkron metódusokat is. Létrehozhat egy típustárat is az egyéni interfészekhez, hogy az ügyfelek futásidőben hozzáférhessenek az objektum metódusaihoz. Miután definiált egy felületet, írja le a Microsoft Interface Definition Language (MIDL) nyelven, lefordítja és regisztrálja, ugyanúgy használja, mint bármely általános felületet. Az elosztott COM-val a felületi metódusok a távoli folyamatok és az ugyanazon a számítógépen található egyéb folyamatok számára is elérhetők.
Végül a COM-felületek létrehozásához olyan fejlesztői környezetre van szükség, amely tartalmaz egy C/C++ fordítót és a Midl.exe fordítót.
A COM-felület létrehozásának lépései a következők:
- Döntse el, hogyan szeretne kompatibilitás támogatást nyújtani a felülethez. Akár típuskönyvtár-vezérelt marsallalást, akár proxy/csonk DLL-t használva. Még a folyamat közbeni interfészeket is fel kell használni, ha azokat a lakáshatárokon keresztül kell használni. Érdemes minden COM-felületre létrehozni a marshaling támogatást, még akkor is, ha úgy gondolja, hogy nem lesz rá szüksége. További információt a Interface Marshaling című témakörben talál.
- Írja le az illesztőt vagy interfészeket egy interfészdefiníciós (IDL) fájlban. Emellett a felület bizonyos helyi jellemzőit is megadhatja egy alkalmazáskonfigurációs fájlban (ACF). Ha típustár-alapú marshalingot használ, adjon hozzá egy kódtárat utasítást, amely azokra a felületekre hivatkozik, amelyekhez típusinformációkat szeretne létrehozni.
- A MIDL-fordítóval létrehozhat egy típustárfájlt és fejlécfájlt, vagy C-nyelvű proxy-/csonkfájlokat, felületazonosító-fájlt, DLL-adatfájlt és fejlécfájlt. További információért tekintse meg a MIDL-kompilációt.
- A választott marshaling metódustól függően írjon egy moduldefiníciós (DEF) fájlt, fordítsa le és csatolja az összes MIDL által létrehozott fájlt egyetlen proxy DLL-hez, és regisztrálja a felületet a rendszerregisztrációs adatbázisban, vagy regisztrálja a típustárat. További információt Type Library- betöltése és regisztrálása, valamint Proxy DLL- létrehozása és regisztrálása című témakörben talál.
Kapcsolódó témakörök