Partager via


Interfaces (COM)

Les interfaces suivantes sont fournies par COM.

Interface Descriptif
IAccessControl Permet la gestion de l’accès aux objets et aux propriétés sur les objets.
IAgileObject Marque une interface aussi agile sur les appartements.
IBindCtx Fournit l’accès à un contexte de liaison, qui est un objet qui stocke des informations sur une opération de liaison moniker particulière.
IBlockingLock Fournit un sémaphore qui peut être utilisé pour fournir un accès temporairement exclusif à une ressource partagée telle qu’un fichier.
ICallFactory Crée un objet d’appel pour le traitement des appels aux méthodes d’une interface asynchrone.
ICallFrame Active la manipulation des trames d’appel, telles que les trames de pile. Le cadre d’appel est le corps des informations qu’une procédure doit enregistrer pour lui permettre de revenir correctement à son appelant. Une trame d’appel peut exister sur la pile ou dans les registres. Une trame de pile conserve les informations de contexte de son appelant sur la pile.
ICallFrameEvents Remet les notifications d’appel de méthode.
ICallFrameWalker Guide un cadre de pile à la recherche de valeurs intéressantes.
ICallIndirect Appelle un objet avec une référence indirecte aux arguments d’appel, plutôt que l’appel direct traditionnel.
ICallInterceptor Prend en charge l’inscription et l’annulation de l’inscription des récepteurs d’événements souhaitant être avertis des appels effectués directement sur l’interface. En outre, cette interface fournit un moyen par lequel un appel peut être effectué avec une référence indirecte aux arguments d’appel.
ICallUnmarshal Est utilisé côté serveur (réception) d’un appel distant. Une instance appropriée d’ICallUnmarshal peut être utilisée pour effectuer une transformation en trame d’appel d’appel d’une méthode précédemment marshalée par un appel à ICallFrame ::Marshal côté client (envoi).
ICancelMethodCalls Gère les demandes d’annulation sur un appel de méthode sortante et surveille l’état actuel de cet appel de méthode sur le thread de serveur.
ICatInformation Obtient des informations sur les catégories implémentées ou requises par une certaine classe, ainsi que des informations sur les catégories inscrites sur l’ordinateur spécifié.
ICatRegister Fournit des méthodes pour inscrire et annuler l’inscription des informations de catégorie de composant dans le Registre. Cela inclut les noms lisibles par l’homme des catégories et les catégories implémentées/requises par un composant ou une classe donné.
IClassActivator Spécifie une méthode qui récupère un objet de classe.
IClassFactory Permet de créer une classe d’objets.
IClassFactory2 Permet à un objet de fabrique de classes, dans n’importe quel type de serveur d’objets, de contrôler la création d’objets par le biais d’une licence.
IClientSecurity Donne au client le contrôle des paramètres de sécurité pour chaque proxy d’interface individuel d’un objet.
IComThreadingInfo Vous permet d’obtenir les informations suivantes sur l’appartement et le thread que l’appelant exécute dans : type d’appartement, type de thread et GUID de thread. Il vous permet également de spécifier un GUID de thread.
IConnectionPoint Prend en charge les points de connexion pour les objets connectables.
IConnectionPointContainer Prend en charge les points de connexion pour les objets connectables.
IContext Prend en charge la définition des propriétés de contexte COM+.
IContextCallback Fournit un mécanisme permettant d’exécuter une fonction à l’intérieur d’un contexte d’objet COM+ spécifique.
IContinueCallback Fournit un mécanisme de rappel générique pour les processus interromptables qui doivent régulièrement demander à un objet s’il faut continuer.
IEnumCATID Énumère les identificateurs de catégorie.
IEnumCLSID Énumère les identificateurs de classe.
IEnumCATEGORYINFO Énumère les catégories de composants inscrites dans le système.
IEnumConnectionPoints Énumère les points de connexion.
IEnumConnections Énumère les connexions actuelles pour un objet connectable.
IEnumContextProps Fournit un mécanisme permettant d’énumérer les propriétés de contexte associées à un contexte d’objet COM+.
IEnumGUID Permet aux clients d’énumérer une collection d’ID de classe pour les classes COM.
IEnumString Énumérer des chaînes. LPWSTR est le type qui indique un pointeur vers une chaîne nulle de caractères larges ou Unicode.
IEnumUnknown Énumère les objets avec l’interface IUnknown . Il peut être utilisé pour énumérer les objets d’un composant contenant plusieurs objets.
IEventProperty Associe une propriété d’événement nommée à sa valeur.
IEventPublisher Inscrit, modifie, supprime et fournit des informations sur un éditeur d’événements.
IExternalConnection Gère le nombre d’objets serveur de connexions marshalées ou externes. Un serveur qui gère un tel nombre peut détecter lorsqu’il n’a pas de connexions externes et s’arrête de manière ordonnée.
IFastRundown Marque une interface comme éligible pour le comportement d’exécution rapide.
IFileBasedLogInit Initialise une instance d’une implémentation basée sur un fichier de ILog.
IForegroundTransfer Transfère la fenêtre de premier plan au processus hébergeant le serveur COM.
IGlobalInterfaceTable Permet à n’importe quel appartement d’un processus d’accéder à une interface implémentée sur un objet dans tout autre appartement du processus.
IGlobalOptions Définit et interroge certaines propriétés globales du runtime COM.
IInitializeSpy Effectue l’initialisation ou le nettoyage lors de l’entrée ou de la sortie d’un appartement COM.
IInternalUnknown Utilisé exclusivement dans les gestionnaires légers côté client qui nécessitent l’accès à certaines interfaces internes sur le proxy.
ILog Fournit des fonctionnalités de journalisation de bas niveau génériques.
IMalloc Alloue, libère et gère la mémoire.
IMallocSpy Permet aux développeurs d’applications de surveiller (espionner) l’allocation de mémoire, de détecter les fuites de mémoire et de simuler une défaillance de mémoire dans les appels aux méthodes IMalloc .
IMarshal Permet à un objet COM de définir et de gérer le marshaling de ses pointeurs d’interface.
IMarshalingStream Fournit des informations supplémentaires sur le contexte de marshaling aux objets marshalés personnalisés et aux démarshalers.
IMessageFilter Fournit aux serveurs et applications COM la possibilité de gérer de manière sélective les messages COM entrants et sortants en attendant les réponses à partir d’appels synchrones. Le filtrage des messages permet de s’assurer que les appels sont gérés de manière à améliorer les performances et à éviter les blocages. Les messages COM peuvent être synchrones, asynchrones ou synchronisés en entrée ; la majorité des appels d’interface sont synchrones.
IMoniker Vous permet d’utiliser un objet moniker, qui contient des informations qui identifient de manière unique un objet COM. Un objet qui a un pointeur vers l’interface IMoniker de l’objet moniker peut localiser, activer et accéder à l’objet identifié sans avoir d’autres informations spécifiques sur l’emplacement de l’objet dans un système distribué.
IMultiQI Permet à un client d’interroger un proxy d’objet ou un gestionnaire pour plusieurs interfaces à l’aide d’un seul appel RPC. À l’aide de cette interface, au lieu de s’appuyer sur des appels distincts à IUnknown ::QueryInterface, les clients peuvent réduire le nombre d’appels RPC qui doivent traverser des limites de thread, de processus ou d’ordinateur et, par conséquent, le temps nécessaire pour obtenir les pointeurs d’interface demandés.
IObjContext Effectue différentes opérations sur les contextes.
IOleItemContainer Utilisé par les monikers d’éléments lorsqu’ils sont liés aux objets qu’ils identifient.
IOrpcDebugNotify Fournit des fonctionnalités de débogage à distance.
IParseDisplayName Analyse une chaîne de nom affichable pour la convertir en moniker pour les implémentations de moniker personnalisées.
IPersist Fournit le CLSID d’un objet qui peut être stocké de manière persistante dans le système. Permet à l’objet de spécifier le gestionnaire d’objets à utiliser dans le processus client, car il est utilisé dans l’implémentation par défaut du marshaling.
IPersistFile Permet à un objet d’être chargé à partir ou enregistré dans un fichier disque, au lieu d’un objet ou d’un flux de stockage.
IPersistStorage Permet à une application conteneur de passer un objet de stockage à l’un de ses objets contenus et de charger et d’enregistrer l’objet de stockage.
IPersistStream Permet l’enregistrement et le chargement d’objets qui utilisent un flux série simple pour leurs besoins de stockage.
IPersistStreamInit Remplacement de IPersistStream qui ajoute une méthode d’initialisation.
IPipeByte Transfère les données du type d’octet (qui est de 8 bits à l’échelle).
IPipeDouble Transfère les données du type double (qui est de 64 bits de large).
IPipeLong Transfère les données du type entier long (qui est de 32 bits à l’échelle).
IProcessInitControl Spécifie l’intervalle de délai d’attente d’initialisation du processus.
IProcessLock Utilisé par ISurrogateService pour empêcher la fin du processus en raison d’un délai d’attente.
IProgressNotify Permet aux applications et à d’autres objets de recevoir des notifications de modifications dans la progression d’une opération de téléchargement.
IProvideClassInfo Fournit l’accès aux informations de type pour l’entrée de coclasse d’un objet dans sa bibliothèque de types.
IProvideClassInfo2 Extension à IProvideClassInfo qui facilite la récupération de l’interface sortante d’un objet pour son jeu d’événements par défaut.
IProvideMultipleClassInfo Extension à IProvideClassInfo2 qui permet de récupérer plus rapidement et plus facilement des informations de type à partir d’un composant pouvant avoir plusieurs coclasses qui déterminent son comportement.
IPSFactoryBuffer Fournit des méthodes personnalisées pour la création de proxys et de stubs d’objets COM. Cette interface n’est pas marshalable.
IROTData Implémenté par des monikers pour permettre à la table d’objets en cours d’exécution (ROT) de comparer les monikers entre eux.
IRpcChannelBuffer Marshale les données entre un proxy client COM et un stub de serveur COM.
IRpcOptions Permet aux appelants de définir ou d’interroger les valeurs de différentes propriétés qui contrôlent la façon dont COM gère les appels de procédure distante (RPC).
IRpcProxyBuffer Contrôle le proxy RPC utilisé pour marshaler les données entre les composants COM.
IRpcStubBuffer Contrôle le stub RPC utilisé pour marshaler les données entre les composants COM.
IRunnableObject Permet à un conteneur de contrôler l’exécution de ses objets incorporés. Dans le cas d’un objet implémenté avec un serveur local, l’appel de la méthode Run lance le fichier .EXE du serveur. Dans le cas d’un objet implémenté avec un serveur in-process, l’appel d’exécution entraîne la transition de l’objet .DLL fichier vers l’état en cours d’exécution.
IRunningObjectTable Gère l’accès à la table d’objets en cours d’exécution (ROT), une table de recherche globalement accessible sur chaque station de travail. Le ROT d’une station de travail effectue le suivi de ces objets qui peuvent être identifiés par un moniker et qui sont en cours d’exécution sur la station de travail. Lorsqu’un client tente de lier un moniker à un objet, le moniker vérifie si l’objet est déjà en cours d’exécution ; cela permet au moniker de se lier à l’instance actuelle au lieu de charger un nouveau.
IServerSecurity Utilisé par un serveur pour authentifier le client et gérer l’emprunt d’identité du client.
IStdMarshalInfo Récupère le CLSID identifiant le gestionnaire à utiliser dans le processus de destination pendant le marshaling standard.
ISurrogate Utilisé pour charger dynamiquement de nouveaux serveurs DLL dans une substitution existante et libérer le substitut lorsqu’il n’est plus nécessaire.
ISurrogateService Utilisé pour initialiser, lancer et publier une application COM+. Vous pouvez également actualiser le catalogue et arrêter le processus.
ISynchronize Fournit une communication asynchrone entre les objets concernant l’occurrence d’un événement. Les objets qui implémentent ISynchronize peuvent recevoir des indications indiquant qu’un événement s’est produit et qu’ils peuvent répondre aux requêtes relatives à l’événement. De cette façon, les clients peuvent s’assurer qu’une demande a été traitée avant d’envoyer une demande ultérieure qui dépend de l’achèvement du premier.
ISynchronizeContainer Gère un groupe d’objets de synchronisation non signés.
ISynchronizeEvent Affecte un handle d’événement à un objet de synchronisation.
ISynchronizeHandle Récupère un handle associé à un objet de synchronisation.
IUnknown Permet aux clients d’obtenir des pointeurs vers d’autres interfaces sur un objet donné via la méthode QueryInterface et de gérer l’existence de l’objet via les méthodes AddRef et Release . Toutes les autres interfaces COM sont héritées, directement ou indirectement, d’IUnknown. Par conséquent, les trois méthodes dans IUnknown sont les premières entrées du VTable pour chaque interface.