Fonction Initialize (roapi.h)
Initialise un thread pour utiliser Windows Runtime API.
Syntaxe
HRESULT Initialize(
RO_INIT_TYPE initType
);
Paramètres
initType
Spécifie le type d’appartement du thread à initialiser.
Valeur retournée
- S_OK : initialisation réussie pour la première fois sur le thread actuel
- S_FALSE - Initialisation imbriquée réussie (le thread actuel a déjà été initialisé pour le type d’appartement spécifié)
- E_INVALIDARG : valeur initType non valide
- CO_E_INIT_TLS : impossible d’allouer la structure TLS interne de COM
- E_OUTOFMEMORY : impossible d’allouer des structures par thread/par appartement autres que tls
- RPC_E_CHANGED_MODE : le thread actuel est déjà initialisé pour un type d’appartement différent de ce qui est spécifié.
Remarques
Windows ::Foundation ::Initialize est modifié pour créer des ASTA au lieu des STA classiques pour la valeur RO_INIT_TYPERO_INIT_SINGLETHREADED. Windows ::Foundation ::Initialize(RO_INIT_SINGLETHREADED) n’est pas pris en charge pour les applications de bureau et retourne CO_E_NOTSUPPORTED s’il est appelé à partir d’un processus autre qu’une application du Windows Store.
Pour les applications Microsoft DirectX, vous devez initialiser le thread initial à l’aide de Windows ::Foundation ::Initialize(RO_INIT_MULTITHREADED).
Pour un serveur EXE hors processus, vous devez initialiser le thread initial du serveur à l’aide de Windows ::Foundation ::Initialize(RO_INIT_MULTITHREADED).
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | roapi.h |