System.Win.ComObj.CoInitFlags

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

CoInitFlags: Integer = -1;  // defaults to no threading model, call CoInitialize()

C++

extern DELPHI_PACKAGE int CoInitFlags;

Propriétés

Type Visibilité  Source Unité  Parent
variable public
System.Win.ComObj.pas
System.Win.ComObj.hpp
System.Win.ComObj System.Win.ComObj

Description

Indique le niveau de gestion de threads requis pour un serveur .EXE COM.

CoInitFlags contrôle la manière dont le COM est initialisé pour la gestion de threads. Cette variable n'affecte que les exécutables (.EXE), et non les serveurs en processus (.DLL et .OCX).

Généralement le code pour initialiser le niveau de la gestion de threads est automatiquement ajouté par l'expert créant l'objet COM dans votre application. Dans des applications contenant plusieurs objets COM, le COM est initialisé pour le niveau le plus élevé de gestion, où le thread unique est le plus bas niveau et le thread libre le plus haut niveau. Pour définir manuellement le niveau de la gestion de threads COM, affectez une valeur à CoInitFlags dans le fichier source principal du programme avant l'appel à Application.Initialize.

Le tableau suivant énumère les constantes (définies dans l'unité ActiveX) pouvant être organisées ensemble pour créer la valeur de CoInitFlags.



Constante Valeur Signification

COINIT_MULTITHREADED

0

COM appelle les objets sur n'importe quel thread (thread libre)

COINIT_APARTMENTTHREADED

2

Chaque objet a son propre thread (modèle de logement)

COINIT_DISABLE_OLE1DDE

4

N'utilise pas le DDE pour la gestion Ole1.

COINIT_SPEED_OVER_MEMORY

8

Optimise pour la vitesse plutôt que pour la mémoire.



La valeur de CoInitFlags est –1 pour un thread unique.

Voir aussi