Freigeben über


Schnittstellen (COM)

Die folgenden Schnittstellen werden von COM bereitgestellt.

Schnittstelle BESCHREIBUNG
IAccessControl Ermöglicht die Verwaltung des Zugriffs auf Objekte und Eigenschaften für die Objekte.
IAgileObject Markiert eine Schnittstelle als wohnungsübergreifend agil.
Ibindctx Bietet Zugriff auf einen Bindungskontext, bei dem es sich um ein Objekt handelt, das Informationen zu einem bestimmten Monikerbindungsvorgang speichert.
IBlockingLock Stellt einen Semaphor bereit, der verwendet werden kann, um vorübergehend exklusiven Zugriff auf eine freigegebene Ressource wie z. B. eine Datei bereitzustellen.
ICallFactory Erstellt ein Aufrufobjekt zum Verarbeiten von Aufrufen der Methoden einer asynchronen Schnittstelle.
ICallFrame Ermöglicht die Bearbeitung von Aufrufframes, z. B. Stapelframes. Der Aufrufrahmen ist der Text der Informationen, die eine Prozedur speichern muss, damit sie ordnungsgemäß zu ihrem Aufrufer zurückkehren kann. Ein Aufrufframe kann im Stapel oder in Registern vorhanden sein. Ein Stapelrahmen verwaltet die Kontextinformationen des Aufrufers auf dem Stapel.
ICallFrameEvents Übermittelt Methodenaufrufbenachrichtigungen.
ICallFrameWalker Durchläuft einen Stapelrahmen auf der Suche nach interessanten Werten.
ICallIndirect Ruft ein -Objekt mit einem indirekten Verweis auf die Aufrufargumente anstelle des herkömmlichen direkten Aufrufs auf.
ICallInterceptor Unterstützt das Registrieren und Aufheben der Registrierung von Ereignissenken, die über Aufrufe benachrichtigt werden möchten, die direkt auf der Schnittstelle erfolgen. Darüber hinaus bietet diese Schnittstelle ein Mittel, mit dem ein Aufruf mit einem indirekten Verweis auf die Aufrufargumente ausgeführt werden kann.
ICallUnmarshal Wird auf der Serverseite (empfangend) eines Remoteaufrufs verwendet. Eine geeignete instance von ICallUnmarshal kann verwendet werden, um einen Methodenaufruf, der zuvor durch einen Aufruf von ICallFrame::Marshal auf der Clientseite gemarshallt wurde, in einen Aufrufrahmen zurück zu transformieren.
ICancelMethodCalls Verwaltet Abbruchanforderungen für einen ausgehenden Methodenaufruf und überwacht den aktuellen Zustand dieses Methodenaufrufs im Serverthread.
ICatInformation Ruft Informationen zu den Kategorien ab, die von einer bestimmten Klasse implementiert oder benötigt werden, sowie Informationen zu den Kategorien, die auf dem angegebenen Computer registriert sind.
ICatRegister Stellt Methoden zum Registrieren und Aufheben der Registrierung von Komponentenkategorieinformationen in der Registrierung bereit. Dies umfasst sowohl die für Menschen lesbaren Namen von Kategorien als auch die Kategorien, die von einer bestimmten Komponente oder Klasse implementiert bzw. benötigt werden.
IClassActivator Gibt eine Methode an, die ein Klassenobjekt abruft.
IClassFactory Ermöglicht das Erstellen einer Klasse von -Objekten.
IClassFactory2 Ermöglicht einem Klassenfactoryobjekt in jeder Art von Objektserver, die Objekterstellung durch Lizenzierung zu steuern.
IClientSecurity Gibt dem Client die Kontrolle über die Sicherheitseinstellungen für jeden einzelnen Schnittstellenproxy eines Objekts.
IComThreadingInfo Ermöglicht es Ihnen, die folgenden Informationen über das Apartment und den Thread abzurufen, in denen der Aufrufer ausgeführt wird: Apartmenttyp, Threadtyp und Thread-GUID. Außerdem können Sie eine Thread-GUID angeben.
IConnectionPoint Unterstützt Verbindungspunkte für Objekte, die verbunden werden können.
IConnectionPointContainer Unterstützt Verbindungspunkte für Objekte, die verbunden werden können.
IContext Unterstützt das Festlegen von COM+-Kontexteigenschaften.
IContextCallback Stellt einen Mechanismus zum Ausführen einer Funktion in einem bestimmten COM+-Objektkontext bereit.
IContinueCallback Stellt einen generischen Rückrufmechanismus für unterbrechbare Prozesse bereit, bei denen ein Objekt regelmäßig gefragt werden soll, ob die Fortsetzung fortgesetzt werden soll.
IEnumCATID Listet Kategoriebezeichner auf.
IEnumCLSID Listet Klassenbezeichner auf.
IEnumCATEGORYINFO Listet im System registrierte Komponentenkategorien auf.
IEnumConnectionPoints Listet Verbindungspunkte auf.
IEnumConnections Listet die aktuellen Verbindungen für ein verbindungsfähiges Objekt auf.
IEnumContextProps Stellt einen Mechanismus zum Aufzählen der Kontexteigenschaften bereit, die einem COM+-Objektkontext zugeordnet sind.
IEnumGUID Ermöglicht Clients das Aufzählen einer Auflistung von Klassen-IDs für COM-Klassen.
IEnumString Auflisten von Zeichenfolgen. LPWSTR ist der Typ, der einen Zeiger auf eine Zeichenfolge mit 0-Endung mit breiten Oder Unicode-Zeichen angibt.
IEnumUnknown Listet Objekte mit der IUnknown-Schnittstelle auf. Es kann verwendet werden, um die Objekte in einer Komponente aufzulisten, die mehrere Objekte enthält.
IEventProperty Ordnet eine benannte Ereigniseigenschaft ihrem Wert zu.
IEventPublisher Registriert, ändert, entfernt und stellt Informationen zu einem Ereignisherausgeber bereit.
IExternalConnection Verwaltet die Anzahl von gemarshallten oder externen Verbindungen eines Serverobjekts. Ein Server, der eine solche Anzahl verwaltet, kann erkennen, wenn er über keine externen Verbindungen verfügt, und sich in geordneter Weise herunterfahren.
IFastRundown Markiert eine Schnittstelle als geeignet für schnelles Rundownverhalten.
IFileBasedLogInit Initialisiert eine instance einer dateibasierten Implementierung von ILog.
IForegroundTransfer Überträgt das Vordergrundfenster an den Prozess, der den COM-Server hostt.
IGlobalInterfaceTable Ermöglicht jedem Apartment in einem Prozess den Zugriff auf eine Schnittstelle, die für ein Objekt in einem anderen Apartment im Prozess implementiert ist.
IGlobalOptions Legt bestimmte globale Eigenschaften der COM-Runtime fest und fragt sie ab.
IInitializeSpy Führt die Initialisierung oder Bereinigung beim Betreten oder Verlassen eines COM-Apartments durch.
IInternalUnknown Wird ausschließlich in einfachen clientseitigen Handlern verwendet, die Zugriff auf einige der internen Schnittstellen des Proxys erfordern.
Ilog Bietet generische Protokollierungsfunktionen auf niedriger Ebene.
IMalloc Ordnet Arbeitsspeicher zu bzw. gibt ihn frei und verwaltet ihn.
IMallocSpy Ermöglicht Anwendungsentwicklern, die Speicherbelegung zu überwachen (auszuspionieren), Speicherverluste zu erkennen und Speicherfehler bei Aufrufen von IMalloc-Methoden zu simulieren.
IMarshal Ermöglicht einem COM-Objekt, das Marshalling der Schnittstellenzeiger zu definieren und zu verwalten.
IMarshalingStream Stellt zusätzliche Informationen zum Marshallkontext für benutzerdefinierte Marshallobjekte und Entmarshaler bereit.
Imessagefilter Bietet COM-Servern und -Anwendungen die Möglichkeit, ein- und ausgehende COM-Nachrichten selektiv zu verarbeiten, während sie auf Antworten von synchronen Aufrufen warten. Durch das Filtern von Nachrichten wird sichergestellt, dass Anrufe so behandelt werden, dass die Leistung verbessert und Deadlocks vermieden werden. COM-Nachrichten können synchron, asynchron oder eingabesynchron sein. die meisten Schnittstellenaufrufe sind synchron.
Imoniker Ermöglicht die Verwendung eines Moniker-Objekts, das Informationen enthält, die ein COM-Objekt eindeutig identifizieren. Ein Objekt, das über einen Zeiger auf die IMoniker-Schnittstelle des Moniker-Objekts verfügt, kann das identifizierte Objekt suchen, aktivieren und darauf zugreifen, ohne über andere spezifische Informationen darüber zu verfügen, wo sich das Objekt tatsächlich in einem verteilten System befindet.
IMultiQI Ermöglicht einem Client das Abfragen eines Objektproxys oder -Handlers für mehrere Schnittstellen mithilfe eines einzelnen RPC-Aufrufs. Wenn Sie diese Schnittstelle verwenden, können Clients nicht auf separate Aufrufe von IUnknown::QueryInterface vertrauen, sondern die Anzahl der RPC-Aufrufe reduzieren, die Thread-, Prozess- oder Computergrenzen überschreiten müssen, und damit die Zeit, die zum Abrufen der angeforderten Schnittstellenzeiger erforderlich ist.
IObjContext Führt verschiedene Vorgänge für Kontexte aus.
IOleItemContainer Wird von Elementmonikern verwendet, wenn sie an die von ihnen identifizierten Objekte gebunden sind.
IOrpcDebugNotify Stellt Remotedebuggingfunktionen bereit.
IParseDisplayName Analysiert eine anzeigebare Namenszeichenfolge, um sie in einen Moniker für benutzerdefinierte Monikerimplementierungen zu konvertieren.
Ipersist Stellt die CLSID eines Objekts bereit, das dauerhaft im System gespeichert werden kann. Ermöglicht dem -Objekt die Angabe, welcher Objekthandler im Clientprozess verwendet werden soll, da er in der Standardimplementierung des Marshallings verwendet wird.
Ipersistfile Ermöglicht das Laden oder Speichern eines Objekts aus einer Datenträgerdatei anstelle eines Speicherobjekts oder -streams.
IPersistStorage Ermöglicht es einer Containeranwendung, ein Speicherobjekt an eines der enthaltenen Objekte zu übergeben und das Speicherobjekt zu laden und zu speichern.
Ipersiststream Ermöglicht das Speichern und Laden von Objekten, die einen einfachen seriellen Datenstrom für ihre Speicheranforderungen verwenden.
IPersistStreamInit Ein Ersatz für IPersistStream , der eine Initialisierungsmethode hinzufügt.
IPipeByte Überträgt Daten des Bytetyps (8 Bit breit).
IPipeDouble Überträgt Daten vom Typ Double (64 Bit breit).
IPipeLong Überträgt Daten des typs long integer (32 Bit breit).
IProcessInitControl Gibt das Timeoutintervall für die Prozessinitialisierung an.
IProcessLock Wird von ISurrogateService verwendet, um zu verhindern, dass der Prozess aufgrund eines Timeouts beendet wird.
IProgressNotify Ermöglicht Es Anwendungen und anderen Objekten, Benachrichtigungen über Änderungen im Verlauf eines Downloadvorgangs zu erhalten.
IProvideClassInfo Ermöglicht den Zugriff auf die Typinformationen für den Coklasseneintrag eines Objekts in seiner Typbibliothek.
IProvideClassInfo2 Eine Erweiterung von IProvideClassInfo , die das Abrufen der ausgehenden Schnittstelle eines Objekts für den Standardereignissatz ermöglicht.
IProvideMultipleClassInfo Eine Erweiterung von IProvideClassInfo2 , die das Abrufen von Typinformationen aus einer Komponente mit mehreren Coklassen ermöglicht, die ihr Verhalten bestimmen.
IPSFactoryBuffer Stellt benutzerdefinierte Methoden zum Erstellen von COM-Objektproxys und Stubs bereit. Diese Schnittstelle kann nicht gemarst werden.
IROTData Wird von Monikern implementiert, damit die laufende Objekttabelle (ROT) Moniker miteinander vergleichen kann.
IRpcChannelBuffer Marschallt Daten zwischen einem COM-Client-Proxy und einem COM-Server-Stub.
IRpcOptions Ermöglicht Aufrufenden das Festlegen oder Abfragen der Werte verschiedener Eigenschaften, die steuern, wie COM Remoteprozeduraufrufe (RPC) verarbeitet.
IRpcProxyBuffer Steuert den RPC-Proxy, der zum Marshallen von Daten zwischen COM-Komponenten verwendet wird.
IRpcStubBuffer Steuert den RPC-Stub, der zum Marshallen von Daten zwischen COM-Komponenten verwendet wird.
IRunnableObject Ermöglicht einem Container, die Ausführung der eingebetteten Objekte zu steuern. Im Fall eines Objekts, das mit einem lokalen Server implementiert ist, startet das Aufrufen der Run-Methode die .EXE Datei des Servers. Bei einem Objekt, das mit einem prozessinternen Server implementiert ist, führt das Aufrufen von Run dazu, dass das Objekt .DLL Datei in den Ausführungszustand übergeht.
Irunningobjecttable Verwaltet den Zugriff auf die ausgeführte Objekttabelle (ROT), eine global zugängliche Nachschlagetabelle auf jeder Arbeitsstation. Der ROT-Wert einer Arbeitsstation verfolgt die Objekte, die durch einen Moniker identifiziert werden können und die derzeit auf der Arbeitsstation ausgeführt werden. Wenn ein Client versucht, einen Moniker an ein Objekt zu binden, überprüft der Moniker den ROT-Wert, um festzustellen, ob das Objekt bereits ausgeführt wird. Dadurch kann der Moniker an den aktuellen instance binden, anstatt einen neuen zu laden.
IServerSecurity Wird von einem Server verwendet, um den Client zu authentifizieren und den Identitätswechsel des Clients zu verwalten.
IStdMarshalInfo Ruft die CLSID ab, die den Handler identifiziert, der während des Standard marshallings im Zielprozess verwendet werden soll.
ISurrogate Wird verwendet, um neue DLL-Server dynamisch in ein vorhandenes Ersatzgate zu laden und die Ersatzperson frei zu geben, wenn es nicht mehr benötigt wird.
ISurrogateService Wird zum Initialisieren, Starten und Freigeben einer COM+-Anwendung verwendet. Sie können den Katalog auch aktualisieren und den Prozess herunterfahren.
ISynchronisieren Stellt eine asynchrone Kommunikation zwischen Objekten über das Auftreten eines Ereignisses bereit. Objekte, die ISynchronize implementieren, können Hinweise darauf erhalten, dass ein Ereignis aufgetreten ist, und sie können auf Abfragen zum Ereignis reagieren. Auf diese Weise können Clients sicherstellen, dass eine Anforderung verarbeitet wurde, bevor sie eine nachfolgende Anforderung übermitteln, die vom Abschluss der ersten Anforderung abhängt.
ISynchronizeContainer Verwaltet eine Gruppe nicht signalisierter Synchronisierungsobjekte.
ISynchronizeEvent Weist einem Synchronisierungsobjekt ein Ereignishandle zu.
ISynchronizeHandle Ruft ein Handle ab, das einem Synchronisierungsobjekt zugeordnet ist.
IUnknown Ermöglicht Clients das Abrufen von Zeigern auf andere Schnittstellen für ein bestimmtes Objekt über die QueryInterface-Methode und das Verwalten des Vorhandenseins des Objekts über die AddRef- und Release-Methoden. Alle anderen COM-Schnittstellen werden direkt oder indirekt von IUnknown geerbt. Daher sind die drei Methoden in IUnknown die ersten Einträge in der VTable für jede Schnittstelle.