Partager via


Options, Assistant Objet simple ATL

Utilisez cette page de l’Assistant Objet simple ATL pour concevoir une meilleure efficacité et une prise en charge des erreurs pour l’objet.

Pour plus d’informations sur les projets ATL et les classes ATL COM, consultez Composants ATL COM Desktop.

  • Modèle de thread

    Indique la méthode de gestion des threads. Par défaut, le projet utilise le thread d’appartement .

    Consultez Spécification du modèle de thread du projet pour plus d’informations.

    Option Description
    Unique Spécifie que l’objet s’exécute toujours dans le thread COM principal. Pour plus d’informations, consultez Appartements à thread unique et InprocServer32 .
    Apartment Spécifie que l’objet utilise le thread d’appartement. Équivalent à l’appartement à thread unique. Chaque objet d’un composant à thread d’appartement est affecté à un appartement pour son thread, pour la durée de vie de l’objet ; Toutefois, plusieurs threads peuvent être utilisés pour plusieurs objets. Chaque appartement est lié à un thread spécifique et a une pompe de messages Windows (par défaut).

    Pour plus d’informations, consultez Les appartements à thread unique.
    Les deux Spécifie que l’objet peut utiliser l’appartement ou le thread libre, selon le type de thread qu’il a créé.
    Gratuit Spécifie que l’objet utilise le threading libre. Le thread libre équivaut à un modèle d’appartement multithread. Pour plus d’informations, consultez Les appartements multithreads.
    Neutre Spécifie que l’objet suit les instructions pour les appartements multithreads, mais il peut s’exécuter sur n’importe quel type de thread.
  • Agrégation

    Indique si l’objet utilise l’agrégation. L’objet d’agrégation choisit les interfaces à exposer aux clients, et les interfaces sont exposées comme si l’objet d’agrégation les a implémentés. Les clients de l’objet d’agrégation communiquent uniquement avec l’objet d’agrégation.

    Option Description
    Oui Spécifie que l’objet peut être agrégé. Valeur par défaut.
    Aucun Spécifie que l’objet n’est pas agrégé.
    Uniquement Spécifie que l’objet doit être agrégé.
  • Interface

    Indique le type d’interface pris en charge par l’objet. Par défaut, l’objet prend en charge une interface double.

    Option Description
    Double Spécifie que l’objet prend en charge une interface double (sa table virtuelle a des fonctions d’interface personnalisées et des méthodes de liaison IDispatch tardive). Permet aux clients COM et aux contrôleurs Automation d’accéder à l’objet. Valeur par défaut.
    Personnalisée Spécifie que l’objet prend en charge une interface personnalisée (sa vtable comprend des fonctions d’interface personnalisées). Une interface personnalisée peut être plus rapide qu’une interface double, en particulier entre les frontières de processus.

    - L’automatisation compatible permet aux contrôleurs Automation d’accéder à un objet qui a la prise en charge de l’interface personnalisée.
  • Support

    Indique une prise en charge supplémentaire de l’objet.

    Option Description
    ISupportErrorInfo Crée une prise en charge pour l’interface ISupportErrorInfo afin que l’objet puisse retourner les informations d’erreur au client.
    Points de connexion Active les points de connexion pour votre objet en faisant dériver la classe de votre objet à partir d’IConnectionPointContainerImpl.
    Marshaler à threads libres Crée un objet marshaleur à threads libres pour marshaler efficacement les pointeurs d’interface entre les threads du même processus. Disponible pour l’objet spécifiant les deux comme modèle de thread.
    IObjectWithSite (prise en charge des objets IE) Implémente IObjectWithSiteImpl, qui offre un moyen simple de prendre en charge la communication entre un objet et son site dans un conteneur.

Voir aussi

Assistant Objet simple ATL
Objet simple ATL
Problèmes de thread de serveur in-process