Interfészek (COM)
A COM az alábbi felületeket biztosítja.
Interfész | Leírás |
---|---|
IAccessControl | Lehetővé teszi az objektumokhoz és tulajdonságokhoz való hozzáférés kezelését az objektumokon. |
IAgileObject | Egy felületet agilisként jelöl meg az apartmanok között. |
IBindCtx | Hozzáférést biztosít egy kötési környezethez, amely egy adott monikerkötési művelet adatait tároló objektum. |
IBlockingLock | Olyan szemafortot biztosít, amely ideiglenesen kizárólagos hozzáférést biztosít egy megosztott erőforráshoz, például egy fájlhoz. |
ICallFactory | Létrehoz egy hívásobjektumot az aszinkron interfész metódusaihoz érkező hívások feldolgozásához. |
ICallFrame | Lehetővé teszi a híváskeretek, például a veremkeretek kezelését. A híváskeret az az információtörzs, amelyet az eljárásnak mentenie kell ahhoz, hogy megfelelően visszatérjen a hívóhoz. A híváskeret a veremen vagy a regiszterekben is létezhet. A veremkeretek megőrzik a hívó környezeti adatait a veremen. |
ICallFrameEvents | Metódushívási értesítéseket küld. |
ICallFrameWalker | Egy veremkeretet követve érdekes értékeket keres. |
ICallIndirect | A hagyományos közvetlen hívás helyett egy közvetett hivatkozással rendelkező objektumot hív meg a hívási argumentumokra. |
ICallInterceptor | Támogatja azon eseményfogyók regisztrációját és regisztrációjának törlését, akik közvetlenül a felületen kívánnak értesítést kapni a hívásokról. Ezen kívül ez az interfész olyan eszközt is biztosít, amellyel a meghívások indirekt hivatkozással végrehajthatók a meghívási argumentumokra. |
ICallUnmarshal | A távoli hívás kiszolgálói (fogadó) oldalán használható. A ICallUnmarshal megfelelő példányával visszaalakíthat egy híváskeretbe egy olyan metódushívást, amelyet korábban az ICallFrame::Marshal meghívása hozott létre az ügyfél (küldés) oldalán. |
ICancelMethodCalls | Kezeli a kimenő metódushívások lemondási kéréseit, és figyeli a metódushívás aktuális állapotát a kiszolgálószálon. |
ICatInformation | Beolvasja az adott osztály által megvalósított vagy megkövetelt kategóriákra vonatkozó információkat, valamint a megadott számítógépen regisztrált kategóriákra vonatkozó információkat. |
ICatRegister | Metódusokat biztosít az összetevőkategória-adatok regisztrálásához és regisztrációjának törléséhez a beállításjegyzékben. Ez magában foglalja a kategóriák emberi olvasható nevét, valamint az adott összetevő vagy osztály által implementált/megkövetelt kategóriákat. |
IClassActivator | Osztályobjektumot lekérő metódust ad meg. |
IClassFactory | Engedélyezi az objektumok osztályának létrehozását. |
IClassFactory2 | Lehetővé teszi, hogy egy osztály-előállító objektum bármilyen objektumkiszolgálón szabályozhassa az objektumok létrehozását a licencelésen keresztül. |
IClientSecurity | Lehetővé teszi az ügyfél számára az objektum minden egyes interfészproxyjának biztonsági beállításait. |
IComThreadingInfo | Lehetővé teszi a következő információk beszerzését a hívó által futtatott lakásról és szálról: lakástípus, száltípus és szál GUID azonosítója. Lehetővé teszi a szál GUID-azonosítóinak megadását is. |
IConnectionPoint | Támogatja a csatlakoztatható objektumok csatlakozási pontjait. |
IConnectionPointContainer | Támogatja a csatlakoztatható objektumok csatlakozási pontjait. |
IContext | Támogatja a COM+ környezettulajdonságok beállítását. |
IContextCallback | Mechanizmust biztosít egy függvény végrehajtásához egy adott COM+ objektumkörnyezetben. |
IContinueCallback | Általános visszahívási mechanizmust biztosít a megszakítható folyamatokhoz, amelyeknek rendszeresen meg kell kérdezniük egy objektumot, hogy folytatják-e. |
IEnumCATID | Kategóriaazonosítók számbavétele. |
IEnumCLSID | Osztályazonosítók számbavétele. |
IEnumCATEGORYINFO | A rendszerben regisztrált összetevők kategóriáinak számbavétele. |
IEnumConnectionPoints | A csatlakozási pontok számbavétele. |
IEnumConnections | Egy összekapcsolható objektum aktuális kapcsolatainak számbavétele. |
IEnumContextProps | Lehetővé teszi a COM+ objektumkörnyezethez társított környezeti tulajdonságok számbavételét. |
IEnumGUID | Lehetővé teszi az ügyfelek számára a COM-osztályok osztályazonosítóinak gyűjteményén keresztüli számbavételét. |
IEnumString | Sztringek számbavétele. LPWSTR az a típus, amely egy széles vagy Unicode karakterből álló, nulla végződésű sztringre mutató mutatót jelez. |
IEnumUnknown | Az IUnknown felülettel rendelkező objektumok számbavétele. Több objektumot tartalmazó összetevő objektumain keresztüli számbavételre használható. |
IEventProperty | Hozzárendel egy elnevezett eseménytulajdonságot az értékéhez. |
IEventPublisher | Regisztrál, módosít, eltávolít és információt nyújt egy esemény közzétevőjéről. |
IExternalConnection | Kezeli a kiszolgálóobjektumok felügyelt vagy külső kapcsolatainak számát. Az ilyen számokat fenntartó kiszolgálók észlelhetik, ha nincsenek külső kapcsolatai, és szabályosan leállnak. |
IFastRundown | A felület megjelölése a gyors lefutási viselkedésre jogosultként. |
IFileBasedLogInit | Inicializálja a ILogfájlalapú implementációjának egy példányát. |
IForegroundTransfer | Átviszi az előtérablakot a COM-kiszolgálót üzemeltető folyamatba. |
IGlobalInterfaceTable | Lehetővé teszi, hogy a folyamat bármely lakása hozzáférhessen a folyamat bármely más lakásában lévő objektumon implementált felülethez. |
IGlobalOptions | Beállítja és lekérdezi a COM-futtatókörnyezet bizonyos globális tulajdonságait. |
IInitializeSpy | Inicializálást vagy tisztítást végez COM-lakásba való belépéskor vagy kilépéskor. |
IInternalUnknown | Kizárólag olyan egyszerű ügyféloldali kezelőkhöz használható, amelyek hozzáférést igényelnek a proxy néhány belső adapteréhez. |
ILog | Általános alacsony szintű naplózási funkciót biztosít. |
IMalloc | Lefoglalja, felszabadítja és kezeli a memóriát. |
IMallocSpy | Lehetővé teszi, hogy az alkalmazásfejlesztők figyeljék (kémkedjenek) a memóriafoglalást, észleljék a memóriaszivárgásokat, és szimulálják a memóriahibákat az IMallocmetódusokhívásaiban. |
IMarshal | Lehetővé teszi, hogy a COM-objektumok definiálják és kezeljék a felület mutatóinak marshalingját. |
IMarshalingStream | További információt nyújt az egyénileg marsallt objektumokra és nem martalókra vonatkozó marshaling környezetről. |
IMessageFilter | Lehetővé teszi a COM-kiszolgálók és alkalmazások számára, hogy szelektíven kezeljék a bejövő és kimenő COM-üzeneteket, miközben szinkron hívásokból érkező válaszokat várnak. Az üzenetek szűrésével biztosítható, hogy a hívások kezelése a teljesítmény javítása és a holtpontok elkerülése érdekében történjen. A COM-üzenetek lehetnek szinkron, aszinkron vagy bemeneti szinkronizált; a felületi hívások többsége szinkron. |
IMoniker | Lehetővé teszi egy moniker objektum használatát, amely olyan információkat tartalmaz, amelyek egyedileg azonosítják a COM-objektumokat. Azok az objektumok, amelyek a moniker objektum IMoniker felületére mutató mutatóval rendelkeznek, megkereshetik, aktiválhatják és hozzáférhetnek az azonosított objektumhoz anélkül, hogy bármilyen más konkrét információval rendelkeznék arról, hogy az objektum valójában hol található egy elosztott rendszerben. |
IMultiQI | Lehetővé teszi az ügyfél számára, hogy egyetlen RPC-hívással több interfészhez is lekérdezhesse az objektumproxyt vagy a kezelőt. Ezzel a felülettel az IUnknown::QueryInterfacekülönálló hívásai helyett az ügyfelek csökkenthetik azoknak az RPC-hívásoknak a számát, amelyeknek szál-, folyamat- vagy géphatárokat kell átlépniük, és így a kért felületmutatók beszerzéséhez szükséges időt. |
IObjContext | Különböző műveleteket hajt végre a környezetekben. |
IOleItemContainer | Az elem-bevételezők akkor használják, ha azokat az általuk azonosított objektumokhoz kötik. |
IOrpcDebugNotify | Távoli hibakeresési funkciót biztosít. |
IParseDisplayName | Elemez egy megjeleníthető névsztringet, hogy az egyéni moniker-implementációkhoz monikerné alakítsa. |
IPersist | Egy olyan objektum CLSID-azonosítóját adja meg, amely tartósan tárolható a rendszerben. Lehetővé teszi az objektum számára, hogy meghatározza, melyik objektumkezelőt használja az ügyfélfolyamatban, ahogyan az a marshaling alapértelmezett implementációjában használatos. |
IPersistFile | Lehetővé teszi egy objektum betöltését vagy mentését egy lemezfájlból, nem pedig egy tárolóobjektumba vagy streambe. |
IPersistStorage | Lehetővé teszi, hogy a tárolóalkalmazás átadjon egy tárolóobjektumot az egyik tárolt objektumának, és betöltse és mentse a tárolóobjektumot. |
IPersistStream | Lehetővé teszi az egyszerű soros streamet használó objektumok mentését és betöltését a tárolási igényeiknek megfelelően. |
IPersistStreamInit | A IPersistStream helyettesítése, amely inicializálási módszert ad hozzá. |
IPipeByte | A bájt típusú (8 bites) adatok átvitele. |
IPipeDouble | A kettős típusú (64 bites) adatok átvitele. |
IPipeLong | A hosszú egész típusú (32 bites) adatokat továbbítja. |
IProcessInitControl | A folyamat inicializálásának időtúllépési időközét adja meg. |
IProcessLock | A ISurrogateService használatával megakadályozza, hogy a folyamat időtúllépés miatt leálljon. |
IProgressNotify | Lehetővé teszi, hogy az alkalmazások és más objektumok értesítést kapjanak a letöltési művelet folyamatának változásairól. |
IProvideClassInfo | Hozzáférést biztosít az objektum társosztály-bejegyzésének típusadataihoz a típustárban. |
IProvideClassInfo2 | Az IProvideClassInfobővítménye gyorsabb és egyszerűbbé teszi egy objektum kimenő felületének IID-azonosítójának lekérését az alapértelmezett eseménykészlethez. |
IProvideMultipleClassInfo | Az IProvideClassInfo2bővítménye, amely gyorsabb és egyszerűbbé teszi a típusinformációk lekérését egy olyan összetevőből, amely több olyan társosztálysal rendelkezhet, amelyek meghatározzák a viselkedését. |
IPSFactoryBuffer | Egyéni metódusokat biztosít a COM-objektum-proxyk és -csonkok létrehozásához. Ez a felület nem módosítható. |
IROTData | A monikerek implementálva lehetővé teszik, hogy a futó objektumtábla (ROT) összehasonlítsa egymással a monikereket. |
IRpcChannelBuffer | Egy COM-ügyfélproxy és egy COM-kiszolgáló csonkja között rögzíti az adatokat. |
IRpcOptions | Lehetővé teszi a hívók számára a távoli eljáráshívások (RPC) kezelését szabályozó különböző tulajdonságok értékeinek beállítását vagy lekérdezését. |
IRpcProxyBuffer | Szabályozza a COM-összetevők közötti adat-egyeztetéshez használt RPC-proxyt. |
IRpcStubBuffer | Szabályozza a COM-összetevők közötti adatcsomózáshoz használt RPC-csonkot. |
IRunnableObject | Lehetővé teszi a tároló számára a beágyazott objektumok futtatásának szabályozását. Helyi kiszolgálóval implementált objektum esetén a Futtatás metódus meghívása elindítja a kiszolgáló .EXE fájlját. Folyamatban lévő kiszolgálóval implementált objektum esetén a Futtatás meghívásával az objektum .DLL fájl áttér a futó állapotba. |
IRunningObjectTable | A futó objektumtáblához (ROT) való hozzáférést kezeli, amely minden munkaállomáson globálisan elérhető keresési tábla. A munkaállomás ROT-azonosítója nyomon követi azokat az objektumokat, amelyeket egy moniker azonosíthat, és amelyek jelenleg a munkaállomáson futnak. Amikor egy ügyfél megpróbál egy monikert egy objektumhoz kötni, a moniker ellenőrzi a ROT-t, hogy az objektum már fut-e; Ez lehetővé teszi, hogy a moniker az új példány betöltése helyett az aktuális példányhoz kapcsolódjon. |
IServerSecurity | A kiszolgáló az ügyfél hitelesítéséhez és az ügyfél megszemélyesítésének kezeléséhez használja. |
IStdMarshalInfo | Lekéri a CLSID azonosítót, amely azonosítja a célfolyamatban a szabványos marsallálás során használni kívánt kezelőt. |
ISurrogate | Az új DLL-kiszolgálók dinamikus betöltésére szolgál egy meglévő helyettesítőbe, és felszabadítja a helyettest, amikor már nincs rá szükség. |
ISurrogateService | COM+ alkalmazás inicializálására, elindítására és kiadására szolgál. A katalógust is frissítheti, és leállíthatja a folyamatot. |
ISynchronize | Aszinkron kommunikációt biztosít az objektumok között az esemény előfordulásáról. Az ISynchronize implementálását végrehajtó objektumok jelezhetik, hogy esemény történt, és válaszolhatnak az eseményre vonatkozó lekérdezésekre. Ily módon az ügyfelek meggyőződhetnek arról, hogy egy kérést feldolgoztak, mielőtt elküldenek egy későbbi kérelmet, amely az első befejezésétől függ. |
ISynchronizeContainer | Aláíratlan szinkronizálási objektumok egy csoportját kezeli. |
ISynchronizeEvent | Eseményleírót rendel egy szinkronizálási objektumhoz. |
ISynchronizeHandle | Lekéri a szinkronizálási objektumhoz társított leírót. |
IUnknown | Lehetővé teszi az ügyfelek számára, hogy az QueryInterface metóduson keresztül mutatót kapjanak egy adott objektum más felületére, és az AddRef és Kiadási metódusokkal felügyelhessék az objektum létezését. Minden más COM-felület közvetlenül vagy közvetve öröklődik IUnknown. Ezért az IUnknown három metódusa az első bejegyzés a VTable-ban minden felületen. |